60 lines
1.4 KiB
Python
Executable File
60 lines
1.4 KiB
Python
Executable File
#!/usr/bin/python3
|
|
|
|
import os
|
|
import sys
|
|
sys.path.insert(0, os.path.abspath(os.path.dirname(__file__) + '/' + '../..'))
|
|
|
|
from ffmap.mysqltools import FreifunkMySQL
|
|
|
|
mysql = FreifunkMySQL()
|
|
|
|
mysql.execute("""
|
|
CREATE TABLE gw (
|
|
`id` smallint(5) UNSIGNED NOT NULL,
|
|
`name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
|
|
`stats_page` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,
|
|
`last_contact` datetime NOT NULL
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
|
|
""")
|
|
|
|
mysql.execute("""
|
|
ALTER TABLE gw
|
|
ADD PRIMARY KEY (`id`),
|
|
ADD UNIQUE KEY `name` (`name`)
|
|
""")
|
|
|
|
mysql.execute("""
|
|
ALTER TABLE gw
|
|
MODIFY `id` smallint(5) UNSIGNED NOT NULL AUTO_INCREMENT
|
|
""")
|
|
|
|
mysql.execute("""
|
|
CREATE TABLE gw_admin (
|
|
`gw` smallint(5) UNSIGNED NOT NULL,
|
|
`name` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
|
|
`prio` tinyint(3) UNSIGNED NOT NULL
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
|
|
""")
|
|
|
|
mysql.execute("""
|
|
ALTER TABLE gw_admin
|
|
ADD PRIMARY KEY (`gw`,`name`)
|
|
""")
|
|
|
|
mysql.execute("""
|
|
CREATE TABLE gw_netif (
|
|
`gw` smallint(5) UNSIGNED NOT NULL,
|
|
`mac` char(17) COLLATE utf8_unicode_ci NOT NULL,
|
|
`netif` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
|
|
`vpnif` varchar(15) COLLATE utf8_unicode_ci DEFAULT NULL
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
|
|
""")
|
|
|
|
mysql.execute("""
|
|
ALTER TABLE gw_netif
|
|
ADD PRIMARY KEY (`mac`),
|
|
ADD KEY `gw` (`gw`)
|
|
""")
|
|
|
|
mysql.close()
|