1*c1d8dc74SAndreas GohrCREATE TABLE `access` 2*c1d8dc74SAndreas Gohr( 3*c1d8dc74SAndreas Gohr `id` INTEGER PRIMARY KEY, 4*c1d8dc74SAndreas Gohr `dt` TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP, 5*c1d8dc74SAndreas Gohr `page` TEXT NOT NULL, 6*c1d8dc74SAndreas Gohr `ip` TEXT NOT NULL, 7*c1d8dc74SAndreas Gohr `ua` TEXT NOT NULL, 8*c1d8dc74SAndreas Gohr `ua_info` TEXT NOT NULL, 9*c1d8dc74SAndreas Gohr `ua_type` TEXT NOT NULL, 10*c1d8dc74SAndreas Gohr `ua_ver` TEXT NOT NULL, 11*c1d8dc74SAndreas Gohr `os` TEXT NOT NULL, 12*c1d8dc74SAndreas Gohr `ref_md5` TEXT NOT NULL, 13*c1d8dc74SAndreas Gohr `ref_type` TEXT NOT NULL, 14*c1d8dc74SAndreas Gohr `ref` TEXT NOT NULL, 15*c1d8dc74SAndreas Gohr `screen_x` INTEGER NOT NULL, 16*c1d8dc74SAndreas Gohr `screen_y` INTEGER NOT NULL, 17*c1d8dc74SAndreas Gohr `view_x` INTEGER NOT NULL, 18*c1d8dc74SAndreas Gohr `view_y` INTEGER NOT NULL, 19*c1d8dc74SAndreas Gohr `user` TEXT NOT NULL, 20*c1d8dc74SAndreas Gohr `session` TEXT NOT NULL, 21*c1d8dc74SAndreas Gohr `js` INTEGER NOT NULL DEFAULT 1, 22*c1d8dc74SAndreas Gohr `uid` TEXT NOT NULL DEFAULT '' 23*c1d8dc74SAndreas Gohr); 24*c1d8dc74SAndreas GohrCREATE INDEX `idx_access_ref_type` ON `access` (`ref_type`); 25*c1d8dc74SAndreas GohrCREATE INDEX `idx_access_page` ON `access` (`page`); 26*c1d8dc74SAndreas GohrCREATE INDEX `idx_access_ref_md5` ON `access` (`ref_md5`); 27*c1d8dc74SAndreas GohrCREATE INDEX `idx_access_dt` ON `access` (`dt`); 28*c1d8dc74SAndreas GohrCREATE INDEX `idx_access_ua_type` ON `access` (`ua_type`); 29*c1d8dc74SAndreas Gohr 30*c1d8dc74SAndreas Gohr 31*c1d8dc74SAndreas GohrCREATE TABLE `iplocation` 32*c1d8dc74SAndreas Gohr( 33*c1d8dc74SAndreas Gohr `ip` TEXT PRIMARY KEY, 34*c1d8dc74SAndreas Gohr `code` TEXT NOT NULL, 35*c1d8dc74SAndreas Gohr `country` TEXT NOT NULL, 36*c1d8dc74SAndreas Gohr `city` TEXT NOT NULL, 37*c1d8dc74SAndreas Gohr `host` TEXT NOT NULL, 38*c1d8dc74SAndreas Gohr `lastupd` TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP 39*c1d8dc74SAndreas Gohr); 40*c1d8dc74SAndreas GohrCREATE INDEX `idx_iplocation_code` ON `iplocation` (`code`); 41*c1d8dc74SAndreas Gohr 42*c1d8dc74SAndreas GohrCREATE TABLE `outlinks` 43*c1d8dc74SAndreas Gohr( 44*c1d8dc74SAndreas Gohr `id` INTEGER PRIMARY KEY, 45*c1d8dc74SAndreas Gohr `dt` TEXT NOT NULL, 46*c1d8dc74SAndreas Gohr `session` TEXT NOT NULL, 47*c1d8dc74SAndreas Gohr `link_md5` TEXT NOT NULL, 48*c1d8dc74SAndreas Gohr `link` TEXT NOT NULL, 49*c1d8dc74SAndreas Gohr `page` TEXT NOT NULL DEFAULT '' 50*c1d8dc74SAndreas Gohr); 51*c1d8dc74SAndreas GohrCREATE INDEX `idx_outlinks_link_md5` ON `outlinks` (`link_md5`); 52*c1d8dc74SAndreas GohrCREATE INDEX `idx_outlinks_dt` ON `outlinks` (`dt`); 53*c1d8dc74SAndreas Gohr 54*c1d8dc74SAndreas Gohr 55*c1d8dc74SAndreas GohrCREATE TABLE `search` 56*c1d8dc74SAndreas Gohr( 57*c1d8dc74SAndreas Gohr `id` INTEGER PRIMARY KEY, 58*c1d8dc74SAndreas Gohr `dt` TEXT NOT NULL, 59*c1d8dc74SAndreas Gohr `page` TEXT NOT NULL, 60*c1d8dc74SAndreas Gohr `query` TEXT NOT NULL, 61*c1d8dc74SAndreas Gohr `engine` TEXT NOT NULL 62*c1d8dc74SAndreas Gohr); 63*c1d8dc74SAndreas GohrCREATE INDEX `idx_search_engine` ON `search` (`engine`); 64*c1d8dc74SAndreas GohrCREATE INDEX `idx_search_dt` ON `search` (`dt`); 65*c1d8dc74SAndreas Gohr 66*c1d8dc74SAndreas GohrCREATE TABLE `searchwords` 67*c1d8dc74SAndreas Gohr( 68*c1d8dc74SAndreas Gohr `sid` INTEGER NOT NULL, 69*c1d8dc74SAndreas Gohr `word` TEXT NOT NULL, 70*c1d8dc74SAndreas Gohr PRIMARY KEY (`sid`, `word`) 71*c1d8dc74SAndreas Gohr); 72*c1d8dc74SAndreas Gohr 73*c1d8dc74SAndreas GohrCREATE TABLE `refseen` 74*c1d8dc74SAndreas Gohr( 75*c1d8dc74SAndreas Gohr `ref_md5` TEXT PRIMARY KEY, 76*c1d8dc74SAndreas Gohr `dt` TEXT NOT NULL 77*c1d8dc74SAndreas Gohr); 78*c1d8dc74SAndreas GohrCREATE INDEX `idx_refseen_dt` ON `refseen` (`dt`); 79*c1d8dc74SAndreas Gohr 80*c1d8dc74SAndreas GohrCREATE TABLE `edits` 81*c1d8dc74SAndreas Gohr( 82*c1d8dc74SAndreas Gohr `id` INTEGER PRIMARY KEY, 83*c1d8dc74SAndreas Gohr `dt` TEXT NOT NULL, 84*c1d8dc74SAndreas Gohr `ip` TEXT NOT NULL, 85*c1d8dc74SAndreas Gohr `user` TEXT NOT NULL, 86*c1d8dc74SAndreas Gohr `session` TEXT NOT NULL, 87*c1d8dc74SAndreas Gohr `uid` TEXT NOT NULL, 88*c1d8dc74SAndreas Gohr `page` TEXT NOT NULL, 89*c1d8dc74SAndreas Gohr `type` TEXT NOT NULL 90*c1d8dc74SAndreas Gohr); 91*c1d8dc74SAndreas GohrCREATE INDEX `idx_edits_dt` ON `edits` (`dt`); 92*c1d8dc74SAndreas GohrCREATE INDEX `idx_edits_type` ON `edits` (`type`); 93*c1d8dc74SAndreas Gohr 94*c1d8dc74SAndreas Gohr 95*c1d8dc74SAndreas GohrCREATE TABLE `session` 96*c1d8dc74SAndreas Gohr( 97*c1d8dc74SAndreas Gohr `session` TEXT PRIMARY KEY, 98*c1d8dc74SAndreas Gohr `dt` TEXT NOT NULL, 99*c1d8dc74SAndreas Gohr `end` TEXT NOT NULL, 100*c1d8dc74SAndreas Gohr `views` INTEGER NOT NULL, 101*c1d8dc74SAndreas Gohr `uid` TEXT NOT NULL 102*c1d8dc74SAndreas Gohr); 103*c1d8dc74SAndreas GohrCREATE INDEX `idx_session_dt` ON `session` (`dt`); 104*c1d8dc74SAndreas GohrCREATE INDEX `idx_session_views` ON `session` (`views`); 105*c1d8dc74SAndreas GohrCREATE INDEX `idx_session_uid` ON `session` (`uid`); 106*c1d8dc74SAndreas Gohr 107*c1d8dc74SAndreas Gohr 108*c1d8dc74SAndreas GohrCREATE TABLE `logins` 109*c1d8dc74SAndreas Gohr( 110*c1d8dc74SAndreas Gohr `id` INTEGER PRIMARY KEY, 111*c1d8dc74SAndreas Gohr `dt` TEXT NOT NULL, 112*c1d8dc74SAndreas Gohr `ip` TEXT NOT NULL, 113*c1d8dc74SAndreas Gohr `user` TEXT NOT NULL, 114*c1d8dc74SAndreas Gohr `session` TEXT NOT NULL, 115*c1d8dc74SAndreas Gohr `uid` TEXT NOT NULL, 116*c1d8dc74SAndreas Gohr `type` TEXT NOT NULL 117*c1d8dc74SAndreas Gohr); 118*c1d8dc74SAndreas GohrCREATE INDEX `idx_logins_dt` ON `logins` (`dt`); 119*c1d8dc74SAndreas GohrCREATE INDEX `idx_logins_type` ON `logins` (`type`); 120*c1d8dc74SAndreas Gohr 121*c1d8dc74SAndreas Gohr 122*c1d8dc74SAndreas GohrCREATE TABLE `lastseen` 123*c1d8dc74SAndreas Gohr( 124*c1d8dc74SAndreas Gohr `user` TEXT PRIMARY KEY, 125*c1d8dc74SAndreas Gohr `dt` TEXT NOT NULL 126*c1d8dc74SAndreas Gohr); 127*c1d8dc74SAndreas Gohr 128*c1d8dc74SAndreas GohrCREATE TABLE `media` 129*c1d8dc74SAndreas Gohr( 130*c1d8dc74SAndreas Gohr `id` INTEGER PRIMARY KEY, 131*c1d8dc74SAndreas Gohr `dt` TEXT NOT NULL, 132*c1d8dc74SAndreas Gohr `media` TEXT NOT NULL, 133*c1d8dc74SAndreas Gohr `ip` TEXT, 134*c1d8dc74SAndreas Gohr `ua` TEXT NOT NULL, 135*c1d8dc74SAndreas Gohr `ua_info` TEXT NOT NULL, 136*c1d8dc74SAndreas Gohr `ua_type` TEXT NOT NULL, 137*c1d8dc74SAndreas Gohr `ua_ver` TEXT NOT NULL, 138*c1d8dc74SAndreas Gohr `os` TEXT NOT NULL, 139*c1d8dc74SAndreas Gohr `user` TEXT NOT NULL, 140*c1d8dc74SAndreas Gohr `session` TEXT NOT NULL, 141*c1d8dc74SAndreas Gohr `uid` TEXT NOT NULL, 142*c1d8dc74SAndreas Gohr `size` INTEGER NOT NULL, 143*c1d8dc74SAndreas Gohr `mime1` TEXT NOT NULL, 144*c1d8dc74SAndreas Gohr `mime2` TEXT NOT NULL, 145*c1d8dc74SAndreas Gohr `inline` INTEGER NOT NULL 146*c1d8dc74SAndreas Gohr); 147*c1d8dc74SAndreas GohrCREATE INDEX `idx_media_media` ON `media` (`media`); 148*c1d8dc74SAndreas GohrCREATE INDEX `idx_media_dt` ON `media` (`dt`); 149*c1d8dc74SAndreas GohrCREATE INDEX `idx_media_ua_type` ON `media` (`ua_type`); 150*c1d8dc74SAndreas GohrCREATE INDEX `idx_media_mime1` ON `media` (`mime1`); 151*c1d8dc74SAndreas Gohr 152*c1d8dc74SAndreas Gohr 153*c1d8dc74SAndreas GohrCREATE TABLE `history` 154*c1d8dc74SAndreas Gohr( 155*c1d8dc74SAndreas Gohr `info` TEXT NOT NULL, 156*c1d8dc74SAndreas Gohr `dt` TEXT NOT NULL, 157*c1d8dc74SAndreas Gohr `value` INTEGER NOT NULL, 158*c1d8dc74SAndreas Gohr PRIMARY KEY (`info`, `dt`) 159*c1d8dc74SAndreas Gohr); 160*c1d8dc74SAndreas Gohr 161*c1d8dc74SAndreas GohrCREATE TABLE `groups` 162*c1d8dc74SAndreas Gohr( 163*c1d8dc74SAndreas Gohr `id` INTEGER PRIMARY KEY, 164*c1d8dc74SAndreas Gohr `dt` TEXT NOT NULL, 165*c1d8dc74SAndreas Gohr `group` TEXT NOT NULL, 166*c1d8dc74SAndreas Gohr `type` TEXT NOT NULL 167*c1d8dc74SAndreas Gohr); 168*c1d8dc74SAndreas GohrCREATE INDEX `idx_groups_dt` ON `groups` (`dt`); 169*c1d8dc74SAndreas GohrCREATE INDEX `idx_groups_type` ON `groups` (`type`); 170*c1d8dc74SAndreas Gohr 171*c1d8dc74SAndreas Gohr 172*c1d8dc74SAndreas Gohr 173*c1d8dc74SAndreas Gohr 174*c1d8dc74SAndreas Gohr 175*c1d8dc74SAndreas Gohr 176*c1d8dc74SAndreas Gohr 177*c1d8dc74SAndreas Gohr 178*c1d8dc74SAndreas Gohr 179