diff --git a/pkg/datastore/sqlstore/migrations/mysql/10_alter_stats_table_constraints.sql b/pkg/datastore/sqlstore/migrations/mysql/10_alter_stats_table_constraints.sql index e2e111d9..dba45c31 100644 --- a/pkg/datastore/sqlstore/migrations/mysql/10_alter_stats_table_constraints.sql +++ b/pkg/datastore/sqlstore/migrations/mysql/10_alter_stats_table_constraints.sql @@ -5,8 +5,8 @@ DROP INDEX unique_daily_page_stats ON daily_page_stats; DROP INDEX unique_daily_referrer_stats ON daily_referrer_stats; CREATE UNIQUE INDEX unique_daily_site_stats ON daily_site_stats(site_id, date); -CREATE UNIQUE INDEX unique_daily_page_stats ON daily_page_stats(site_id, hostname, pathname, date); -CREATE UNIQUE INDEX unique_daily_referrer_stats ON daily_referrer_stats(site_id, hostname, pathname, date); +CREATE UNIQUE INDEX unique_daily_page_stats ON daily_page_stats(site_id, hostname(100), pathname(100), date); +CREATE UNIQUE INDEX unique_daily_referrer_stats ON daily_referrer_stats(site_id, hostname(100), pathname(100), date); -- +migrate Down @@ -15,5 +15,5 @@ DROP INDEX unique_daily_page_stats ON daily_page_stats; DROP INDEX unique_daily_referrer_stats ON daily_referrer_stats; CREATE UNIQUE INDEX unique_daily_site_stats ON daily_site_stats(date); -CREATE UNIQUE INDEX unique_daily_page_stats ON daily_page_stats(hostname, pathname, date); -CREATE UNIQUE INDEX unique_daily_referrer_stats ON daily_referrer_stats(hostname, pathname, date); \ No newline at end of file +CREATE UNIQUE INDEX unique_daily_page_stats ON daily_page_stats(hostname(100), pathname(100), date); +CREATE UNIQUE INDEX unique_daily_referrer_stats ON daily_referrer_stats(hostname(100), pathname(100), date); \ No newline at end of file diff --git a/pkg/datastore/sqlstore/migrations/mysql/12_create_hostnames_table.sql b/pkg/datastore/sqlstore/migrations/mysql/12_create_hostnames_table.sql index 8a7bcd41..668444f3 100644 --- a/pkg/datastore/sqlstore/migrations/mysql/12_create_hostnames_table.sql +++ b/pkg/datastore/sqlstore/migrations/mysql/12_create_hostnames_table.sql @@ -2,7 +2,7 @@ CREATE TABLE hostnames( id INTEGER AUTO_INCREMENT PRIMARY KEY NOT NULL, name VARCHAR(255) NOT NULL -) CHARACTER SET=utf8; +) CHARACTER SET=utf8 ENGINE=INNODB; -- +migrate Down DROP TABLE IF EXISTS hostnames; diff --git a/pkg/datastore/sqlstore/migrations/mysql/13_create_unique_hostname_index.sql b/pkg/datastore/sqlstore/migrations/mysql/13_create_unique_hostname_index.sql index a15cf66f..4f88a4c8 100644 --- a/pkg/datastore/sqlstore/migrations/mysql/13_create_unique_hostname_index.sql +++ b/pkg/datastore/sqlstore/migrations/mysql/13_create_unique_hostname_index.sql @@ -1,5 +1,5 @@ -- +migrate Up -CREATE UNIQUE INDEX unique_hostnames_name ON hostnames(name); +CREATE UNIQUE INDEX unique_hostnames_name ON hostnames(name(100)); -- +migrate Down DROP INDEX IF EXISTS unique_hostnames_name; diff --git a/pkg/datastore/sqlstore/migrations/mysql/14_create_pathnames_table.sql b/pkg/datastore/sqlstore/migrations/mysql/14_create_pathnames_table.sql index 2cebe403..ad759fd1 100644 --- a/pkg/datastore/sqlstore/migrations/mysql/14_create_pathnames_table.sql +++ b/pkg/datastore/sqlstore/migrations/mysql/14_create_pathnames_table.sql @@ -2,7 +2,7 @@ CREATE TABLE pathnames( id INTEGER AUTO_INCREMENT PRIMARY KEY NOT NULL, name VARCHAR(255) NOT NULL -) CHARACTER SET=utf8; +) CHARACTER SET=utf8 ENGINE=INNODB; -- +migrate Down DROP TABLE IF EXISTS pathnames; diff --git a/pkg/datastore/sqlstore/migrations/mysql/15_create_unique_pathname_index.sql b/pkg/datastore/sqlstore/migrations/mysql/15_create_unique_pathname_index.sql index fdc81122..d114a1ab 100644 --- a/pkg/datastore/sqlstore/migrations/mysql/15_create_unique_pathname_index.sql +++ b/pkg/datastore/sqlstore/migrations/mysql/15_create_unique_pathname_index.sql @@ -1,5 +1,5 @@ -- +migrate Up -CREATE UNIQUE INDEX unique_pathnames_name ON pathnames(name); +CREATE UNIQUE INDEX unique_pathnames_name ON pathnames(name(100)); -- +migrate Down DROP INDEX IF EXISTS unique_pathnames_name; diff --git a/pkg/datastore/sqlstore/migrations/mysql/1_initial_tables.sql b/pkg/datastore/sqlstore/migrations/mysql/1_initial_tables.sql index 4fcc9ecd..0d282f46 100644 --- a/pkg/datastore/sqlstore/migrations/mysql/1_initial_tables.sql +++ b/pkg/datastore/sqlstore/migrations/mysql/1_initial_tables.sql @@ -4,7 +4,7 @@ CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY NOT NULL, email VARCHAR(100) NOT NULL, password VARCHAR(255) NOT NULL -) CHARACTER SET=utf8; +) CHARACTER SET=utf8 ENGINE=INNODB; CREATE TABLE pageviews( id INT AUTO_INCREMENT PRIMARY KEY NOT NULL, @@ -18,7 +18,7 @@ CREATE TABLE pageviews( referrer VARCHAR(255) NULL, duration INT(4) NULL, timestamp DATETIME NOT NULL -) CHARACTER SET=utf8; +) CHARACTER SET=utf8 ENGINE=INNODB; CREATE TABLE daily_page_stats( hostname VARCHAR(255) NOT NULL, @@ -29,7 +29,7 @@ CREATE TABLE daily_page_stats( bounce_rate FLOAT NOT NULL, avg_duration FLOAT NOT NULL, date DATE NOT NULL -) CHARACTER SET=utf8; +) CHARACTER SET=utf8 ENGINE=INNODB; CREATE TABLE daily_site_stats( pageviews INT NOT NULL, @@ -38,7 +38,7 @@ CREATE TABLE daily_site_stats( bounce_rate FLOAT NOT NULL, avg_duration FLOAT NOT NULL, date DATE NOT NULL -) CHARACTER SET=utf8; +) CHARACTER SET=utf8 ENGINE=INNODB; CREATE TABLE daily_referrer_stats( url VARCHAR(255) NOT NULL, @@ -47,12 +47,12 @@ CREATE TABLE daily_referrer_stats( bounce_rate FLOAT NOT NULL, avg_duration FLOAT NOT NULL, date DATE NOT NULL -) CHARACTER SET=utf8; +) CHARACTER SET=utf8 ENGINE=INNODB; CREATE UNIQUE INDEX unique_user_email ON users(email); CREATE UNIQUE INDEX unique_daily_site_stats ON daily_site_stats(date); -CREATE UNIQUE INDEX unique_daily_page_stats ON daily_page_stats(hostname, pathname, date); -CREATE UNIQUE INDEX unique_daily_referrer_stats ON daily_referrer_stats(url, date); +CREATE UNIQUE INDEX unique_daily_page_stats ON daily_page_stats(hostname(100), pathname(100), date); +CREATE UNIQUE INDEX unique_daily_referrer_stats ON daily_referrer_stats(url(100), date); -- +migrate Down diff --git a/pkg/datastore/sqlstore/migrations/mysql/23_alter_referrer_stats_table.sql b/pkg/datastore/sqlstore/migrations/mysql/23_alter_referrer_stats_table.sql index 4e075539..5d1d57b0 100644 --- a/pkg/datastore/sqlstore/migrations/mysql/23_alter_referrer_stats_table.sql +++ b/pkg/datastore/sqlstore/migrations/mysql/23_alter_referrer_stats_table.sql @@ -10,7 +10,7 @@ CREATE TABLE referrer_stats( known_durations INTEGER NOT NULL DEFAULT 0, avg_duration FLOAT NOT NULL, ts DATETIME NOT NULL -) CHARACTER SET=utf8; +) CHARACTER SET=utf8 ENGINE=INNODB; INSERT INTO referrer_stats SELECT site_id, hostname_id, pathname_id, groupname, pageviews, visitors, bounce_rate, known_durations, avg_duration, CONCAT(date, ' 00:00:00') FROM daily_referrer_stats s; diff --git a/pkg/datastore/sqlstore/migrations/mysql/3_referrer_group_column.sql b/pkg/datastore/sqlstore/migrations/mysql/3_referrer_group_column.sql index f30c11f2..1bac5378 100644 --- a/pkg/datastore/sqlstore/migrations/mysql/3_referrer_group_column.sql +++ b/pkg/datastore/sqlstore/migrations/mysql/3_referrer_group_column.sql @@ -10,7 +10,7 @@ ALTER TABLE daily_referrer_stats ADD COLUMN pathname VARCHAR(255); UPDATE daily_referrer_stats SET hostname = SUBSTRING_INDEX( url, "/", 3) WHERE url != "" AND ( hostname = "" OR hostname IS NULL); UPDATE daily_referrer_stats SET pathname = REPLACE(url, hostname, "") WHERE url != "" AND (pathname = '' OR pathname IS NULL); -CREATE UNIQUE INDEX unique_daily_referrer_stats ON daily_referrer_stats(hostname, pathname, date); +CREATE UNIQUE INDEX unique_daily_referrer_stats ON daily_referrer_stats(hostname(100), pathname(100), date); ALTER TABLE daily_referrer_stats DROP COLUMN url; -- +migrate Down diff --git a/pkg/datastore/sqlstore/migrations/mysql/5_create_sites_table.sql b/pkg/datastore/sqlstore/migrations/mysql/5_create_sites_table.sql index 10f959cc..d46f5dd7 100644 --- a/pkg/datastore/sqlstore/migrations/mysql/5_create_sites_table.sql +++ b/pkg/datastore/sqlstore/migrations/mysql/5_create_sites_table.sql @@ -3,7 +3,7 @@ CREATE TABLE sites ( id INTEGER AUTO_INCREMENT PRIMARY KEY NOT NULL, tracking_id VARCHAR(8) UNIQUE, name VARCHAR(100) NOT NULL -) CHARACTER SET=utf8; +) CHARACTER SET=utf8 ENGINE=INNODB; -- +migrate Down DROP TABLE IF EXISTS sites; \ No newline at end of file