mirror of
https://github.com/NNTmux/newznab-tmux.git
synced 2026-08-29 01:08:56 +00:00
1548 lines
60 KiB
SQL
Executable File
1548 lines
60 KiB
SQL
Executable File
DROP TABLE IF EXISTS allgroups;
|
|
CREATE TABLE allgroups (
|
|
id INT(11) NOT NULL AUTO_INCREMENT,
|
|
name VARCHAR(255) NOT NULL DEFAULT '',
|
|
first_record BIGINT UNSIGNED NOT NULL DEFAULT '0',
|
|
last_record BIGINT UNSIGNED NOT NULL DEFAULT '0',
|
|
updated DATETIME DEFAULT NULL,
|
|
PRIMARY KEY (id),
|
|
INDEX ix_allgroups_name (name)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS anidb_episodes;
|
|
CREATE TABLE anidb_episodes (
|
|
anidbid INT(10) UNSIGNED NOT NULL
|
|
COMMENT 'ID of title from AniDB',
|
|
episodeid INT(10) UNSIGNED NOT NULL DEFAULT '0'
|
|
COMMENT 'anidb id for this episode',
|
|
episode_no SMALLINT(5) UNSIGNED NOT NULL
|
|
COMMENT 'Numeric version of episode (leave 0 for combined episodes).',
|
|
episode_title VARCHAR(255)
|
|
COLLATE utf8_unicode_ci NOT NULL
|
|
COMMENT 'Title of the episode (en, x-jat)',
|
|
airdate DATE NOT NULL,
|
|
PRIMARY KEY (anidbid, episodeid)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET =utf8
|
|
COLLATE =utf8_unicode_ci;
|
|
|
|
|
|
DROP TABLE IF EXISTS anidb_info;
|
|
CREATE TABLE anidb_info (
|
|
anidbid INT(10) UNSIGNED NOT NULL
|
|
COMMENT 'ID of title from AniDB',
|
|
type VARCHAR(32)
|
|
COLLATE utf8_unicode_ci DEFAULT NULL,
|
|
startdate DATE DEFAULT NULL,
|
|
enddate DATE DEFAULT NULL,
|
|
updated TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
related VARCHAR(1024)
|
|
COLLATE utf8_unicode_ci DEFAULT NULL,
|
|
similar VARCHAR(1024)
|
|
COLLATE utf8_unicode_ci DEFAULT NULL,
|
|
creators VARCHAR(1024)
|
|
COLLATE utf8_unicode_ci DEFAULT NULL,
|
|
description TEXT
|
|
COLLATE utf8_unicode_ci DEFAULT NULL,
|
|
rating VARCHAR(5)
|
|
COLLATE utf8_unicode_ci DEFAULT NULL,
|
|
picture VARCHAR(255)
|
|
COLLATE utf8_unicode_ci DEFAULT NULL,
|
|
categories VARCHAR(1024)
|
|
COLLATE utf8_unicode_ci DEFAULT NULL,
|
|
characters VARCHAR(1024)
|
|
COLLATE utf8_unicode_ci DEFAULT NULL,
|
|
PRIMARY KEY (anidbid),
|
|
KEY ix_anidb_info_datetime (startdate, enddate, updated)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET =utf8
|
|
COLLATE =utf8_unicode_ci;
|
|
|
|
|
|
DROP TABLE IF EXISTS anidb_titles;
|
|
CREATE TABLE anidb_titles (
|
|
anidbid INT(10) UNSIGNED NOT NULL
|
|
COMMENT 'ID of title from AniDB',
|
|
type VARCHAR(25)
|
|
COLLATE utf8_unicode_ci NOT NULL
|
|
COMMENT 'type of title.',
|
|
lang VARCHAR(25)
|
|
COLLATE utf8_unicode_ci NOT NULL,
|
|
title VARCHAR(255)
|
|
COLLATE utf8_unicode_ci NOT NULL,
|
|
PRIMARY KEY (anidbid, type, lang, title)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci;
|
|
|
|
|
|
DROP TABLE IF EXISTS audio_data;
|
|
CREATE TABLE audio_data (
|
|
id INT(11) UNSIGNED AUTO_INCREMENT,
|
|
releases_id INT(11) UNSIGNED NOT NULL COMMENT 'FK to releases.id',
|
|
audioid INT(2) UNSIGNED NOT NULL,
|
|
audioformat VARCHAR(50) DEFAULT NULL,
|
|
audiomode VARCHAR(50) DEFAULT NULL,
|
|
audiobitratemode VARCHAR(50) DEFAULT NULL,
|
|
audiobitrate VARCHAR(10) DEFAULT NULL,
|
|
audiochannels VARCHAR(25) DEFAULT NULL,
|
|
audiosamplerate VARCHAR(25) DEFAULT NULL,
|
|
audiolibrary VARCHAR(50) DEFAULT NULL,
|
|
audiolanguage VARCHAR(50) DEFAULT NULL,
|
|
audiotitle VARCHAR(50) DEFAULT NULL,
|
|
PRIMARY KEY (id),
|
|
UNIQUE INDEX ix_releaseaudio_releaseid_audioid (releases_id, audioid)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS binaries;
|
|
CREATE TABLE binaries (
|
|
id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
name VARCHAR(1000) NOT NULL DEFAULT '',
|
|
collections_id INT(11) UNSIGNED NOT NULL DEFAULT 0,
|
|
filenumber INT UNSIGNED NOT NULL DEFAULT '0',
|
|
totalparts INT(11) UNSIGNED NOT NULL DEFAULT 0,
|
|
currentparts INT UNSIGNED NOT NULL DEFAULT 0,
|
|
binaryhash BINARY(16) NOT NULL DEFAULT '0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
|
|
partcheck TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
|
|
partsize BIGINT UNSIGNED NOT NULL DEFAULT 0,
|
|
PRIMARY KEY (id),
|
|
UNIQUE INDEX ix_binaries_binaryhash (binaryhash),
|
|
INDEX ix_binaries_partcheck (partcheck),
|
|
INDEX ix_binaries_collection (collections_id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS binaryblacklist;
|
|
CREATE TABLE binaryblacklist (
|
|
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
groupname VARCHAR(255) NULL,
|
|
regex VARCHAR(2000) NOT NULL,
|
|
msgcol INT(11) UNSIGNED NOT NULL DEFAULT '1',
|
|
optype INT(11) UNSIGNED NOT NULL DEFAULT '1',
|
|
status INT(11) UNSIGNED NOT NULL DEFAULT '1',
|
|
description VARCHAR(1000) CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci NULL,
|
|
last_activity DATE NULL,
|
|
PRIMARY KEY (id),
|
|
INDEX ix_binaryblacklist_groupname (groupname),
|
|
INDEX ix_binaryblacklist_status (status)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1000001;
|
|
|
|
|
|
DROP TABLE IF EXISTS bookinfo;
|
|
CREATE TABLE bookinfo (
|
|
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
title VARCHAR(255) NOT NULL,
|
|
author VARCHAR(255) NOT NULL,
|
|
asin VARCHAR(128) DEFAULT NULL,
|
|
isbn VARCHAR(128) DEFAULT NULL,
|
|
ean VARCHAR(128) DEFAULT NULL,
|
|
url VARCHAR(1000) DEFAULT NULL,
|
|
salesrank INT(10) UNSIGNED DEFAULT NULL,
|
|
publisher VARCHAR(255) DEFAULT NULL,
|
|
publishdate DATETIME DEFAULT NULL,
|
|
pages VARCHAR(128) DEFAULT NULL,
|
|
overview VARCHAR(3000) DEFAULT NULL,
|
|
genre VARCHAR(255) NOT NULL,
|
|
cover TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
createddate DATETIME NOT NULL,
|
|
updateddate DATETIME NOT NULL,
|
|
PRIMARY KEY (id),
|
|
FULLTEXT INDEX ix_bookinfo_author_title_ft (author, title),
|
|
UNIQUE INDEX ix_bookinfo_asin (asin)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS categories;
|
|
CREATE TABLE categories (
|
|
id INT(16) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
title VARCHAR(255) NOT NULL,
|
|
parentid INT NULL,
|
|
status INT NOT NULL DEFAULT '1',
|
|
description VARCHAR(255) NULL,
|
|
disablepreview TINYINT(1) NOT NULL DEFAULT '0',
|
|
minsizetoformrelease BIGINT UNSIGNED NOT NULL DEFAULT '0',
|
|
maxsizetoformrelease BIGINT UNSIGNED NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (id),
|
|
INDEX ix_categories_status (status),
|
|
INDEX ix_categories_parentid (parentid)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1000001;
|
|
|
|
|
|
DROP TABLE IF EXISTS category_regexes;
|
|
CREATE TABLE category_regexes (
|
|
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
group_regex VARCHAR(255) NOT NULL DEFAULT '' COMMENT 'This is a regex to match against usenet groups',
|
|
regex VARCHAR(5000) NOT NULL DEFAULT '' COMMENT 'Regex used to match a release name to categorize it',
|
|
status TINYINT(1) UNSIGNED NOT NULL DEFAULT '1' COMMENT '1=ON 0=OFF',
|
|
description VARCHAR(1000) NOT NULL DEFAULT '' COMMENT 'Optional extra details on this regex',
|
|
ordinal INT SIGNED NOT NULL DEFAULT '0' COMMENT 'Order to run the regex in',
|
|
categories_id SMALLINT UNSIGNED NOT NULL DEFAULT '0010' COMMENT 'Which categories id to put the release in',
|
|
PRIMARY KEY (id),
|
|
INDEX ix_category_regexes_group_regex (group_regex),
|
|
INDEX ix_category_regexes_status (status),
|
|
INDEX ix_category_regexes_ordinal (ordinal),
|
|
INDEX ix_category_regexes_categories_id (categories_id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 100000;
|
|
|
|
|
|
DROP TABLE IF EXISTS collections;
|
|
CREATE TABLE collections (
|
|
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
subject VARCHAR(255) NOT NULL DEFAULT '',
|
|
fromname VARCHAR(255) NOT NULL DEFAULT '',
|
|
date DATETIME DEFAULT NULL,
|
|
xref VARCHAR(255) NOT NULL DEFAULT '',
|
|
totalfiles INT(11) UNSIGNED NOT NULL DEFAULT '0',
|
|
groups_id INT(11) UNSIGNED NOT NULL DEFAULT '0',
|
|
collectionhash VARCHAR(255) NOT NULL DEFAULT '0',
|
|
collection_regexes_id INT SIGNED NOT NULL DEFAULT '0' COMMENT 'FK to collection_regexes.id',
|
|
dateadded DATETIME DEFAULT NULL,
|
|
added TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
filecheck TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
|
|
filesize BIGINT UNSIGNED NOT NULL DEFAULT '0',
|
|
releases_id INT NULL,
|
|
noise CHAR(32) NOT NULL DEFAULT '',
|
|
PRIMARY KEY (id),
|
|
INDEX fromname (fromname),
|
|
INDEX date (date),
|
|
INDEX groups_id (groups_id),
|
|
INDEX ix_collection_filecheck (filecheck),
|
|
INDEX ix_collection_dateadded (dateadded),
|
|
INDEX ix_collection_releaseid (releases_id),
|
|
UNIQUE INDEX ix_collection_collectionhash (collectionhash)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS collection_regexes;
|
|
CREATE TABLE collection_regexes (
|
|
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
group_regex VARCHAR(255) NOT NULL DEFAULT '' COMMENT 'This is a regex to match against usenet groups',
|
|
regex VARCHAR(5000) NOT NULL DEFAULT '' COMMENT 'Regex used for collection grouping',
|
|
status TINYINT(1) UNSIGNED NOT NULL DEFAULT '1' COMMENT '1=ON 0=OFF',
|
|
description VARCHAR(1000) CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'Optional extra details on this regex',
|
|
ordinal INT SIGNED NOT NULL DEFAULT '0' COMMENT 'Order to run the regex in',
|
|
PRIMARY KEY (id),
|
|
INDEX ix_collection_regexes_group_regex (group_regex),
|
|
INDEX ix_collection_regexes_status (status),
|
|
INDEX ix_collection_regexes_ordinal (ordinal)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 100000;
|
|
|
|
|
|
DROP TABLE IF EXISTS consoleinfo;
|
|
CREATE TABLE consoleinfo (
|
|
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
title VARCHAR(255) NOT NULL,
|
|
asin VARCHAR(128) DEFAULT NULL,
|
|
url VARCHAR(1000) DEFAULT NULL,
|
|
salesrank INT(10) UNSIGNED DEFAULT NULL,
|
|
platform VARCHAR(255) DEFAULT NULL,
|
|
publisher VARCHAR(255) DEFAULT NULL,
|
|
genres_id INT(10) NULL DEFAULT NULL,
|
|
esrb VARCHAR(255) NULL DEFAULT NULL,
|
|
releasedate DATETIME DEFAULT NULL,
|
|
review VARCHAR(3000) DEFAULT NULL,
|
|
cover TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
createddate DATETIME NOT NULL,
|
|
updateddate DATETIME NOT NULL,
|
|
PRIMARY KEY (id),
|
|
FULLTEXT INDEX ix_consoleinfo_title_platform_ft (title, platform),
|
|
UNIQUE INDEX ix_consoleinfo_asin (asin)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS countries;
|
|
CREATE TABLE countries (
|
|
id CHAR(2) COLLATE utf8_unicode_ci NOT NULL COMMENT '2 character code.',
|
|
iso3 CHAR(3) COLLATE utf8_unicode_ci NOT NULL COMMENT '3 character code.',
|
|
country VARCHAR(180) CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'Name of the country.',
|
|
PRIMARY KEY (id),
|
|
UNIQUE KEY code3 (iso3),
|
|
UNIQUE KEY country (country)
|
|
)
|
|
ENGINE = MyISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci;
|
|
|
|
|
|
DROP TABLE IF EXISTS dnzb_failures;
|
|
CREATE TABLE dnzb_failures (
|
|
release_id INT(11) UNSIGNED NOT NULL,
|
|
userid INT(11) UNSIGNED NOT NULL,
|
|
failed INT UNSIGNED NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (release_id, userid)
|
|
)
|
|
ENGINE =MYISAM
|
|
DEFAULT CHARSET =utf8
|
|
COLLATE =utf8_unicode_ci;
|
|
|
|
DROP TABLE IF EXISTS forumpost;
|
|
CREATE TABLE forumpost (
|
|
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
forumid INT(11) NOT NULL DEFAULT '1',
|
|
parentid INT(11) NOT NULL DEFAULT '0',
|
|
users_id INT(11) UNSIGNED NOT NULL,
|
|
subject VARCHAR(255) NOT NULL,
|
|
message TEXT NOT NULL,
|
|
locked TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
sticky TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
replies INT(11) UNSIGNED NOT NULL DEFAULT '0',
|
|
createddate DATETIME NOT NULL,
|
|
updateddate DATETIME NOT NULL,
|
|
PRIMARY KEY (id),
|
|
KEY parentid (parentid),
|
|
KEY userid (users_id),
|
|
KEY createddate (createddate),
|
|
KEY updateddate (updateddate)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS gamesinfo;
|
|
CREATE TABLE gamesinfo (
|
|
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
title VARCHAR(255) NOT NULL,
|
|
asin VARCHAR(128) DEFAULT NULL,
|
|
url VARCHAR(1000) DEFAULT NULL,
|
|
publisher VARCHAR(255) DEFAULT NULL,
|
|
genres_id INT(10) NULL DEFAULT NULL,
|
|
esrb VARCHAR(255) NULL DEFAULT NULL,
|
|
releasedate DATETIME DEFAULT NULL,
|
|
review VARCHAR(3000) DEFAULT NULL,
|
|
cover TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
backdrop TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
trailer VARCHAR(1000) NOT NULL DEFAULT '',
|
|
classused VARCHAR(10) NOT NULL DEFAULT 'steam',
|
|
createddate DATETIME NOT NULL,
|
|
updateddate DATETIME NOT NULL,
|
|
PRIMARY KEY (id),
|
|
UNIQUE INDEX ix_gamesinfo_asin (asin),
|
|
INDEX ix_title (title),
|
|
FULLTEXT INDEX ix_title_ft (title)
|
|
)
|
|
ENGINE = MyISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS genres;
|
|
CREATE TABLE genres (
|
|
id INT(11) NOT NULL AUTO_INCREMENT,
|
|
title VARCHAR(255) NOT NULL,
|
|
type INT(4) DEFAULT NULL,
|
|
disabled TINYINT(1) NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1000001;
|
|
|
|
|
|
DROP TABLE IF EXISTS groups;
|
|
CREATE TABLE groups (
|
|
id INT(11) NOT NULL AUTO_INCREMENT,
|
|
name VARCHAR(255) NOT NULL DEFAULT '',
|
|
backfill_target INT(4) NOT NULL DEFAULT '1',
|
|
first_record BIGINT UNSIGNED NOT NULL DEFAULT '0',
|
|
first_record_postdate DATETIME DEFAULT NULL,
|
|
last_record BIGINT UNSIGNED NOT NULL DEFAULT '0',
|
|
last_record_postdate DATETIME DEFAULT NULL,
|
|
last_updated DATETIME DEFAULT NULL,
|
|
minfilestoformrelease INT(4) NULL,
|
|
minsizetoformrelease BIGINT NULL,
|
|
active TINYINT(1) NOT NULL DEFAULT '0',
|
|
backfill TINYINT(1) NOT NULL DEFAULT '0',
|
|
description VARCHAR(255) NULL DEFAULT '',
|
|
PRIMARY KEY (id),
|
|
KEY active (active),
|
|
UNIQUE INDEX ix_groups_name (name)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1000001;
|
|
|
|
|
|
DROP TABLE IF EXISTS invitations;
|
|
CREATE TABLE invitations (
|
|
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
guid VARCHAR(50) NOT NULL,
|
|
users_id INT(11) UNSIGNED NOT NULL,
|
|
createddate DATETIME NOT NULL,
|
|
PRIMARY KEY (id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS logging;
|
|
CREATE TABLE logging (
|
|
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
time DATETIME DEFAULT NULL,
|
|
username VARCHAR(50) DEFAULT NULL,
|
|
host VARCHAR(40) DEFAULT NULL,
|
|
PRIMARY KEY (id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS menu;
|
|
CREATE TABLE menu (
|
|
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
href VARCHAR(2000) NOT NULL DEFAULT '',
|
|
title VARCHAR(2000) NOT NULL DEFAULT '',
|
|
newwindow INT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
tooltip VARCHAR(2000) NOT NULL DEFAULT '',
|
|
role INT(11) UNSIGNED NOT NULL,
|
|
ordinal INT(11) UNSIGNED NOT NULL,
|
|
menueval VARCHAR(2000) NOT NULL DEFAULT '',
|
|
PRIMARY KEY (id),
|
|
INDEX ix_role_ordinal (role, ordinal)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1000001;
|
|
|
|
|
|
DROP TABLE IF EXISTS missed_parts;
|
|
CREATE TABLE missed_parts (
|
|
id INT(16) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
numberid BIGINT UNSIGNED NOT NULL,
|
|
groups_id INT(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'FK to groups.id',
|
|
attempts TINYINT(1) NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (id),
|
|
INDEX ix_missed_parts_attempts (attempts),
|
|
INDEX ix_missed_parts_groupid_attempts (groups_id, attempts),
|
|
INDEX ix_missed_parts_numberid_groupsid_attempts (numberid, groups_id, attempts),
|
|
UNIQUE INDEX ix_missed_parts_numberid_groupsid (numberid, groups_id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS movieinfo;
|
|
CREATE TABLE movieinfo (
|
|
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
imdbid MEDIUMINT(7) UNSIGNED ZEROFILL NOT NULL,
|
|
tmdbid INT(10) UNSIGNED NOT NULL DEFAULT 0,
|
|
title VARCHAR(255) NOT NULL DEFAULT '',
|
|
tagline VARCHAR(1024) NOT NULL DEFAULT '',
|
|
rating VARCHAR(4) NOT NULL DEFAULT '',
|
|
plot VARCHAR(1024) NOT NULL DEFAULT '',
|
|
year VARCHAR(4) NOT NULL DEFAULT '',
|
|
genre VARCHAR(64) NOT NULL DEFAULT '',
|
|
type VARCHAR(32) NOT NULL DEFAULT '',
|
|
director VARCHAR(64) NOT NULL DEFAULT '',
|
|
actors VARCHAR(2000) NOT NULL DEFAULT '',
|
|
language VARCHAR(64) NOT NULL DEFAULT '',
|
|
cover TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
backdrop TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
createddate DATETIME NOT NULL,
|
|
updateddate DATETIME NOT NULL,
|
|
trailer VARCHAR(255) NOT NULL DEFAULT '',
|
|
PRIMARY KEY (id),
|
|
INDEX ix_movieinfo_title (title),
|
|
UNIQUE INDEX ix_movieinfo_imdbid (imdbid)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS musicinfo;
|
|
CREATE TABLE musicinfo (
|
|
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
title VARCHAR(255) NOT NULL,
|
|
asin VARCHAR(128) NULL,
|
|
url VARCHAR(1000) NULL,
|
|
salesrank INT(10) UNSIGNED NULL,
|
|
artist VARCHAR(255) NULL,
|
|
publisher VARCHAR(255) NULL,
|
|
releasedate DATETIME NULL,
|
|
review VARCHAR(3000) NULL,
|
|
year VARCHAR(4) NOT NULL,
|
|
genres_id INT(10) NULL,
|
|
tracks VARCHAR(3000) NULL,
|
|
cover TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
createddate DATETIME NOT NULL,
|
|
updateddate DATETIME NOT NULL,
|
|
PRIMARY KEY (id),
|
|
FULLTEXT INDEX ix_musicinfo_artist_title_ft (artist, title),
|
|
UNIQUE INDEX ix_musicinfo_asin (asin)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
DROP TABLE IF EXISTS multigroup_collections;
|
|
CREATE TABLE multigroup_collections (
|
|
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
subject VARCHAR(255) NOT NULL DEFAULT '',
|
|
fromname VARCHAR(255) NOT NULL DEFAULT '',
|
|
date DATETIME DEFAULT NULL,
|
|
xref VARCHAR(510) NOT NULL DEFAULT '',
|
|
totalfiles INT(11) UNSIGNED NOT NULL DEFAULT '0',
|
|
groups_id INT(11) UNSIGNED NOT NULL DEFAULT '0',
|
|
collectionhash VARCHAR(255) NOT NULL DEFAULT '0',
|
|
collection_regexes_id INT SIGNED NOT NULL DEFAULT '0' COMMENT 'FK to collection_regexes.id',
|
|
dateadded DATETIME DEFAULT NULL,
|
|
added TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
filecheck TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
|
|
filesize BIGINT UNSIGNED NOT NULL DEFAULT '0',
|
|
releases_id INT NULL,
|
|
noise CHAR(32) NOT NULL DEFAULT '',
|
|
PRIMARY KEY (id),
|
|
INDEX fromname (fromname),
|
|
INDEX date (date),
|
|
INDEX groups_id (groups_id),
|
|
INDEX ix_collection_filecheck (filecheck),
|
|
INDEX ix_collection_dateadded (dateadded),
|
|
INDEX ix_collection_releaseid (releases_id),
|
|
UNIQUE INDEX ix_collection_collectionhash (collectionhash)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
DROP TABLE IF EXISTS multigroup_posters;
|
|
CREATE TABLE multigroup_posters (
|
|
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
poster VARCHAR(255) NOT NULL DEFAULT '',
|
|
PRIMARY KEY (id) ,
|
|
UNIQUE KEY (poster)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS content;
|
|
CREATE TABLE content (
|
|
id INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
|
title VARCHAR(255) NOT NULL,
|
|
url VARCHAR(2000) NULL,
|
|
body TEXT NULL,
|
|
metadescription VARCHAR(1000) NOT NULL,
|
|
metakeywords VARCHAR(1000) NOT NULL,
|
|
contenttype INT NOT NULL,
|
|
showinmenu INT NOT NULL,
|
|
status INT NOT NULL,
|
|
ordinal INT NULL,
|
|
role INT NOT NULL DEFAULT '0',
|
|
INDEX ix_showinmenu_status_contenttype_role (showinmenu, status, contenttype, role)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1000001;
|
|
|
|
|
|
DROP TABLE IF EXISTS par_hashes;
|
|
CREATE TABLE par_hashes (
|
|
releases_id INT(11) NOT NULL COMMENT 'FK to releases.id',
|
|
hash VARCHAR(32) NOT NULL COMMENT 'hash_16k block of par2',
|
|
PRIMARY KEY (releases_id, hash)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci;
|
|
|
|
DROP TABLE IF EXISTS parts;
|
|
CREATE TABLE parts (
|
|
binaries_id BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
|
|
messageid VARCHAR(255) CHARACTER SET latin1 NOT NULL DEFAULT '',
|
|
number BIGINT UNSIGNED NOT NULL DEFAULT '0',
|
|
partnumber MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
|
|
size MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (binaries_id,number)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS predb;
|
|
CREATE TABLE predb (
|
|
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'Primary key',
|
|
title VARCHAR(255) NOT NULL DEFAULT '',
|
|
nfo VARCHAR(255) NULL,
|
|
size VARCHAR(50) NULL,
|
|
category VARCHAR(255) NULL,
|
|
predate DATETIME DEFAULT NULL,
|
|
source VARCHAR(50) NOT NULL DEFAULT '',
|
|
requestid INT(10) UNSIGNED NOT NULL DEFAULT '0',
|
|
groups_id INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'FK to groups',
|
|
nuked TINYINT(1) NOT NULL DEFAULT '0' COMMENT 'Is this pre nuked? 0 no 2 yes 1 un nuked 3 mod nuked',
|
|
nukereason VARCHAR(255) NULL COMMENT 'If this pre is nuked, what is the reason?',
|
|
files VARCHAR(50) NULL COMMENT 'How many files does this pre have ?',
|
|
filename VARCHAR(255) NOT NULL DEFAULT '',
|
|
searched TINYINT(1) NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (id),
|
|
UNIQUE INDEX ix_predb_title (title),
|
|
INDEX ix_predb_nfo (nfo),
|
|
INDEX ix_predb_predate (predate),
|
|
INDEX ix_predb_source (source),
|
|
INDEX ix_predb_requestid (requestid, groups_id),
|
|
INDEX ix_predb_filename (filename),
|
|
FULLTEXT INDEX ft_predb_filename (filename),
|
|
INDEX ix_predb_searched (searched)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS predb_hashes;
|
|
CREATE TABLE predb_hashes (
|
|
predb_id INT(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'id, of the predb entry, this hash belongs to',
|
|
hash VARBINARY(20) NOT NULL DEFAULT '',
|
|
PRIMARY KEY (hash)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8mb4
|
|
COLLATE = utf8mb4_unicode_ci;
|
|
|
|
|
|
DROP TABLE IF EXISTS predb_imports;
|
|
CREATE TABLE predb_imports (
|
|
title VARCHAR(255)
|
|
COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
|
|
nfo VARCHAR(255)
|
|
COLLATE utf8_unicode_ci DEFAULT NULL,
|
|
size VARCHAR(50)
|
|
COLLATE utf8_unicode_ci DEFAULT NULL,
|
|
category VARCHAR(255)
|
|
COLLATE utf8_unicode_ci DEFAULT NULL,
|
|
predate DATETIME DEFAULT NULL,
|
|
source VARCHAR(50)
|
|
COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
|
|
requestid INT(10) UNSIGNED NOT NULL DEFAULT '0',
|
|
groups_id INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'FK to groups',
|
|
nuked TINYINT(1) NOT NULL DEFAULT '0' COMMENT 'Is this pre nuked? 0 no 2 yes 1 un nuked 3 mod nuked',
|
|
nukereason VARCHAR(255)
|
|
COLLATE utf8_unicode_ci DEFAULT NULL
|
|
COMMENT 'If this pre is nuked, what is the reason?',
|
|
files VARCHAR(50)
|
|
COLLATE utf8_unicode_ci DEFAULT NULL
|
|
COMMENT 'How many files does this pre have ?',
|
|
filename VARCHAR(255)
|
|
COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
|
|
searched TINYINT(1) NOT NULL DEFAULT '0',
|
|
groupname VARCHAR(255)
|
|
COLLATE utf8_unicode_ci DEFAULT NULL
|
|
)
|
|
ENGINE =MYISAM
|
|
DEFAULT CHARSET =utf8
|
|
COLLATE =utf8_unicode_ci;
|
|
|
|
|
|
DROP TABLE IF EXISTS releases;
|
|
CREATE TABLE releases (
|
|
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
name VARCHAR(255) NOT NULL DEFAULT '',
|
|
searchname VARCHAR(255) NOT NULL DEFAULT '',
|
|
totalpart INT DEFAULT '0',
|
|
groups_id INT(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'FK to groups.id',
|
|
size BIGINT UNSIGNED NOT NULL DEFAULT '0',
|
|
postdate DATETIME DEFAULT NULL,
|
|
adddate DATETIME DEFAULT NULL,
|
|
updatetime TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
gid VARCHAR(32) NULL,
|
|
guid VARCHAR(40) NOT NULL,
|
|
leftguid CHAR(1) NOT NULL COMMENT 'The first letter of the release guid',
|
|
fromname VARCHAR(255) NULL,
|
|
completion FLOAT NOT NULL DEFAULT '0',
|
|
categories_id INT NOT NULL DEFAULT '0010',
|
|
videos_id MEDIUMINT(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'FK to videos.id of the parent series.',
|
|
tv_episodes_id MEDIUMINT(11) SIGNED NOT NULL DEFAULT '0' COMMENT 'FK to tv_episodes.id for the episode.',
|
|
imdbid MEDIUMINT(7) UNSIGNED ZEROFILL NULL,
|
|
xxxinfo_id INT SIGNED NOT NULL DEFAULT '0',
|
|
musicinfo_id INT(11) SIGNED NULL COMMENT 'FK to musicinfo.id',
|
|
consoleinfo_id INT(11) SIGNED NULL COMMENT 'FK to consoleinfo.id',
|
|
gamesinfo_id INT SIGNED NOT NULL DEFAULT '0',
|
|
bookinfo_id INT(11) SIGNED NULL COMMENT 'FK to bookinfo.id',
|
|
anidbid INT NULL COMMENT 'FK to anidb_titles.anidbid',
|
|
predb_id INT(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'FK to predb.id',
|
|
grabs INT UNSIGNED NOT NULL DEFAULT '0',
|
|
comments INT NOT NULL DEFAULT '0',
|
|
passwordstatus TINYINT NOT NULL DEFAULT '0',
|
|
rarinnerfilecount INT NOT NULL DEFAULT '0',
|
|
haspreview TINYINT NOT NULL DEFAULT '0',
|
|
nfostatus TINYINT NOT NULL DEFAULT '0',
|
|
jpgstatus TINYINT(1) NOT NULL DEFAULT '0',
|
|
videostatus TINYINT(1) NOT NULL DEFAULT '0',
|
|
audiostatus TINYINT(1) NOT NULL DEFAULT '0',
|
|
dehashstatus TINYINT(1) NOT NULL DEFAULT '0',
|
|
reqidstatus TINYINT(1) NOT NULL DEFAULT '0',
|
|
nzb_guid BINARY(16) NULL,
|
|
nzbstatus TINYINT(1) NOT NULL DEFAULT '0',
|
|
iscategorized TINYINT(1) NOT NULL DEFAULT '0',
|
|
isrenamed TINYINT(1) NOT NULL DEFAULT '0',
|
|
ishashed TINYINT(1) NOT NULL DEFAULT '0',
|
|
isrequestid TINYINT(1) NOT NULL DEFAULT '0',
|
|
proc_pp TINYINT(1) NOT NULL DEFAULT '0',
|
|
proc_sorter TINYINT(1) NOT NULL DEFAULT '0',
|
|
proc_par2 TINYINT(1) NOT NULL DEFAULT '0',
|
|
proc_nfo TINYINT(1) NOT NULL DEFAULT '0',
|
|
proc_files TINYINT(1) NOT NULL DEFAULT '0',
|
|
proc_uid TINYINT(1) NOT NULL DEFAULT '0',
|
|
proc_srr TINYINT(1) NOT NULL DEFAULT '0' COMMENT 'Has the release been srr
|
|
processed',
|
|
proc_hash16k TINYINT(1) NOT NULL DEFAULT '0' COMMENT 'Has the release been hash16k
|
|
processed',
|
|
PRIMARY KEY (id, categories_id),
|
|
INDEX ix_releases_name (name),
|
|
INDEX ix_releases_groupsid (groups_id,passwordstatus),
|
|
INDEX ix_releases_postdate_searchname (postdate,searchname),
|
|
INDEX ix_releases_guid (guid),
|
|
INDEX ix_releases_leftguid (leftguid ASC, predb_id),
|
|
INDEX ix_releases_nzb_guid (nzb_guid),
|
|
INDEX ix_releases_videos_id (videos_id),
|
|
INDEX ix_releases_tv_episodes_id (tv_episodes_id),
|
|
INDEX ix_releases_imdbid (imdbid),
|
|
INDEX ix_releases_xxxinfo_id (xxxinfo_id),
|
|
INDEX ix_releases_musicinfo_id (musicinfo_id,passwordstatus),
|
|
INDEX ix_releases_consoleinfo_id (consoleinfo_id),
|
|
INDEX ix_releases_gamesinfo_id (gamesinfo_id),
|
|
INDEX ix_releases_bookinfo_id (bookinfo_id),
|
|
INDEX ix_releases_anidbid (anidbid),
|
|
INDEX ix_releases_predb_id_searchname (predb_id,searchname),
|
|
INDEX ix_releases_haspreview_passwordstatus (haspreview,passwordstatus),
|
|
INDEX ix_releases_passwordstatus (passwordstatus),
|
|
INDEX ix_releases_nfostatus (nfostatus,size),
|
|
INDEX ix_releases_dehashstatus (dehashstatus,ishashed),
|
|
INDEX ix_releases_reqidstatus (adddate,reqidstatus,isrequestid)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1
|
|
PARTITION BY RANGE (categories_id) (
|
|
PARTITION misc VALUES LESS THAN (1000),
|
|
PARTITION console VALUES LESS THAN (2000),
|
|
PARTITION movies VALUES LESS THAN (3000),
|
|
PARTITION audio VALUES LESS THAN (4000),
|
|
PARTITION pc VALUES LESS THAN (5000),
|
|
PARTITION tv VALUES LESS THAN (6000),
|
|
PARTITION xxx VALUES LESS THAN (7000),
|
|
PARTITION books VALUES LESS THAN (9000)
|
|
);
|
|
|
|
|
|
DROP TABLE IF EXISTS release_comments;
|
|
CREATE TABLE release_comments (
|
|
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
releases_id INT(11) UNSIGNED NOT NULL COMMENT 'FK to releases.id',
|
|
text VARCHAR(2000) NOT NULL DEFAULT '',
|
|
isvisible TINYINT(1) NOT NULL DEFAULT '1',
|
|
issynced TINYINT(1) NOT NULL DEFAULT '0',
|
|
gid VARCHAR(32) NULL,
|
|
cid VARCHAR(32) NULL,
|
|
text_hash VARCHAR(32) NOT NULL DEFAULT '',
|
|
username VARCHAR(255) NOT NULL DEFAULT '',
|
|
users_id INT(11) UNSIGNED NOT NULL,
|
|
createddate DATETIME DEFAULT NULL,
|
|
host VARCHAR(15) NULL,
|
|
shared TINYINT(1) NOT NULL DEFAULT '0',
|
|
shareid VARCHAR(40) NOT NULL DEFAULT '',
|
|
siteid VARCHAR(40) NOT NULL DEFAULT '',
|
|
sourceid BIGINT(20) UNSIGNED,
|
|
nzb_guid BINARY(16) NOT NULL DEFAULT '0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
|
|
PRIMARY KEY (id),
|
|
UNIQUE INDEX ix_release_comments_hash_releases_id(text_hash, releases_id),
|
|
INDEX ix_releasecomment_releases_id (releases_id),
|
|
INDEX ix_releasecomment_userid (users_id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
DROP TABLE IF EXISTS releases_groups;
|
|
CREATE TABLE releases_groups (
|
|
releases_id INT(11) UNSIGNED NOT NULL DEFAULT '0'
|
|
COMMENT 'FK to releases.id',
|
|
groups_id INT(11) UNSIGNED NOT NULL DEFAULT '0'
|
|
COMMENT 'FK to groups.id',
|
|
PRIMARY KEY (releases_id, groups_id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci;
|
|
|
|
DROP TABLE IF EXISTS release_regexes;
|
|
CREATE TABLE release_regexes (
|
|
releases_id INT(11) UNSIGNED NOT NULL DEFAULT '0',
|
|
collection_regex_id INT(11) NOT NULL DEFAULT '0',
|
|
naming_regex_id INT(11) NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (releases_id, collection_regex_id, naming_regex_id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci;
|
|
|
|
|
|
DROP TABLE IF EXISTS release_unique;
|
|
CREATE TABLE release_unique (
|
|
releases_id INT(11) UNSIGNED NOT NULL COMMENT 'FK to releases.id.',
|
|
uniqueid BINARY(16) NOT NULL DEFAULT '0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0' COMMENT 'Unique_ID from mediainfo.',
|
|
PRIMARY KEY (releases_id, uniqueid)
|
|
)
|
|
ENGINE = MyISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci;
|
|
|
|
|
|
DROP TABLE IF EXISTS releaseextrafull;
|
|
CREATE TABLE releaseextrafull (
|
|
releases_id INT(11) UNSIGNED NOT NULL COMMENT 'FK to releases.id',
|
|
mediainfo TEXT NULL,
|
|
PRIMARY KEY (releases_id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci;
|
|
|
|
|
|
DROP TABLE IF EXISTS release_files;
|
|
CREATE TABLE release_files (
|
|
releases_id int(11) unsigned NOT NULL COMMENT 'FK to releases.id',
|
|
name varchar(255) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
|
|
size bigint(20) unsigned NOT NULL DEFAULT '0',
|
|
ishashed tinyint(1) NOT NULL DEFAULT '0',
|
|
createddate datetime DEFAULT NULL,
|
|
passworded tinyint(1) unsigned NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (releases_id, name),
|
|
KEY ix_releasefiles_ishashed (ishashed)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci;
|
|
|
|
|
|
DROP TABLE IF EXISTS release_naming_regexes;
|
|
CREATE TABLE release_naming_regexes (
|
|
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
group_regex VARCHAR(255) NOT NULL DEFAULT '' COMMENT 'This is a regex to match against usenet groups',
|
|
regex VARCHAR(5000) CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT 'Regex used for extracting name from subject',
|
|
status TINYINT(1) UNSIGNED NOT NULL DEFAULT '1' COMMENT '1=ON 0=OFF',
|
|
description VARCHAR(1000) CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT 'Optional extra details on this regex',
|
|
ordinal INT SIGNED NOT NULL DEFAULT '0' COMMENT 'Order to run the regex in',
|
|
PRIMARY KEY (id),
|
|
INDEX ix_release_naming_regexes_group_regex (group_regex),
|
|
INDEX ix_release_naming_regexes_status (status),
|
|
INDEX ix_release_naming_regexes_ordinal (ordinal)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 100000;
|
|
|
|
|
|
DROP TABLE IF EXISTS release_nfos;
|
|
CREATE TABLE release_nfos (
|
|
releases_id INT(11) UNSIGNED NOT NULL COMMENT 'FK to releases.id',
|
|
nfo BLOB NULL DEFAULT NULL,
|
|
PRIMARY KEY (releases_id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci;
|
|
|
|
|
|
DROP TABLE IF EXISTS release_search_data;
|
|
CREATE TABLE release_search_data (
|
|
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
releases_id INT(11) UNSIGNED NOT NULL COMMENT 'FK to releases.id',
|
|
guid VARCHAR(50) NOT NULL,
|
|
name VARCHAR(255) NOT NULL DEFAULT '',
|
|
searchname VARCHAR(255) NOT NULL DEFAULT '',
|
|
fromname VARCHAR(255) NULL,
|
|
PRIMARY KEY (id),
|
|
FULLTEXT INDEX ix_releasesearch_name_ft (name),
|
|
FULLTEXT INDEX ix_releasesearch_searchname_ft (searchname),
|
|
FULLTEXT INDEX ix_releasesearch_fromname_ft (fromname),
|
|
INDEX ix_releasesearch_releases_id (releases_id),
|
|
INDEX ix_releasesearch_guid (guid)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS release_subtitles;
|
|
CREATE TABLE release_subtitles (
|
|
id INT(11) UNSIGNED AUTO_INCREMENT,
|
|
releases_id INT(11) UNSIGNED NOT NULL COMMENT 'FK to releases.id',
|
|
subsid INT(2) UNSIGNED NOT NULL,
|
|
subslanguage VARCHAR(50) NOT NULL,
|
|
PRIMARY KEY (id),
|
|
UNIQUE INDEX ix_releasesubs_releases_id_subsid (releases_id, subsid)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS settings;
|
|
CREATE TABLE settings (
|
|
section VARCHAR(25) NOT NULL DEFAULT '',
|
|
subsection VARCHAR(25) NOT NULL DEFAULT '',
|
|
name VARCHAR(25) NOT NULL DEFAULT '',
|
|
value VARCHAR(1000) NOT NULL DEFAULT '',
|
|
hint TEXT NOT NULL,
|
|
setting VARCHAR(64) NOT NULL DEFAULT '',
|
|
PRIMARY KEY (section, subsection, name),
|
|
UNIQUE KEY ui_settings_setting (setting)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci;
|
|
|
|
|
|
DROP TABLE IF EXISTS sharing;
|
|
CREATE TABLE sharing (
|
|
site_guid VARCHAR(40) NOT NULL DEFAULT '',
|
|
site_name VARCHAR(255) NOT NULL DEFAULT '',
|
|
username VARCHAR(255) NOT NULL DEFAULT '',
|
|
enabled TINYINT(1) NOT NULL DEFAULT '0',
|
|
posting TINYINT(1) NOT NULL DEFAULT '0',
|
|
fetching TINYINT(1) NOT NULL DEFAULT '1',
|
|
auto_enable TINYINT(1) NOT NULL DEFAULT '1',
|
|
start_position TINYINT(1) NOT NULL DEFAULT '0',
|
|
hide_users TINYINT(1) NOT NULL DEFAULT '1',
|
|
last_article BIGINT UNSIGNED NOT NULL DEFAULT '0',
|
|
max_push MEDIUMINT UNSIGNED NOT NULL DEFAULT '40',
|
|
max_download MEDIUMINT UNSIGNED NOT NULL DEFAULT '150',
|
|
max_pull MEDIUMINT UNSIGNED NOT NULL DEFAULT '20000',
|
|
PRIMARY KEY (site_guid)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci;
|
|
|
|
|
|
DROP TABLE IF EXISTS sharing_sites;
|
|
CREATE TABLE sharing_sites (
|
|
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
site_name VARCHAR(255) NOT NULL DEFAULT '',
|
|
site_guid VARCHAR(40) NOT NULL DEFAULT '',
|
|
last_time DATETIME DEFAULT NULL,
|
|
first_time DATETIME DEFAULT NULL,
|
|
enabled TINYINT(1) NOT NULL DEFAULT '0',
|
|
comments MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS short_groups;
|
|
CREATE TABLE short_groups (
|
|
id INT(11) NOT NULL AUTO_INCREMENT,
|
|
name VARCHAR(255) NOT NULL DEFAULT '',
|
|
first_record BIGINT UNSIGNED NOT NULL DEFAULT '0',
|
|
last_record BIGINT UNSIGNED NOT NULL DEFAULT '0',
|
|
updated DATETIME DEFAULT NULL,
|
|
PRIMARY KEY (id),
|
|
INDEX ix_shortgroups_name (name)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
DROP TABLE IF EXISTS spotnabsources;
|
|
CREATE TABLE spotnabsources
|
|
(
|
|
id BIGINT(20) unsigned PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
|
username VARCHAR(64) DEFAULT 'nntp' NOT NULL,
|
|
useremail VARCHAR(128) DEFAULT 'spot@nntp.com' NOT NULL,
|
|
usenetgroup VARCHAR(64) DEFAULT 'alt.binaries.backup' NOT NULL,
|
|
publickey VARCHAR(512) NOT NULL,
|
|
active TINYINT(1) DEFAULT '0' NOT NULL,
|
|
description VARCHAR(255) DEFAULT '',
|
|
lastupdate DATETIME,
|
|
lastbroadcast DATETIME,
|
|
lastarticle BIGINT(20) unsigned DEFAULT '0' NOT NULL,
|
|
dateadded DATETIME
|
|
)
|
|
ENGINE = MyISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
CREATE UNIQUE INDEX spotnabsources_ix1 ON spotnabsources (username, useremail, usenetgroup);
|
|
|
|
DROP TABLE IF EXISTS steam_apps;
|
|
CREATE TABLE steam_apps (
|
|
name VARCHAR(255) NOT NULL DEFAULT '' COMMENT 'Steam application name',
|
|
appid INT(11) UNSIGNED NULL COMMENT 'Steam application id',
|
|
PRIMARY KEY (appid, name),
|
|
FULLTEXT INDEX ix_name_ft (name)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci;
|
|
|
|
DROP TABLE IF EXISTS tmux;
|
|
CREATE TABLE tmux (
|
|
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
setting VARCHAR(64) NOT NULL,
|
|
value VARCHAR(19000) DEFAULT NULL,
|
|
updateddate TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (id),
|
|
UNIQUE INDEX ix_tmux_setting (setting)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
DROP TABLE IF EXISTS tv_episodes;
|
|
CREATE TABLE tv_episodes (
|
|
id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
videos_id MEDIUMINT(11) UNSIGNED NOT NULL COMMENT 'FK to videos.id of the parent series.',
|
|
series SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'Number of series/season.',
|
|
episode SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'Number of episode within series',
|
|
se_complete VARCHAR(10) COLLATE utf8_unicode_ci NOT NULL COMMENT 'String version of Series/Episode as taken from release subject (i.e. S02E21+22).',
|
|
title VARCHAR(180) CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'Title of the episode.',
|
|
firstaired DATE NOT NULL COMMENT 'Date of original airing/release.',
|
|
summary TEXT CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'Description/summary of the episode.',
|
|
PRIMARY KEY (id),
|
|
UNIQUE KEY (videos_id, series, episode, firstaired)
|
|
)
|
|
ENGINE = MyISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
DROP TABLE IF EXISTS tv_info;
|
|
CREATE TABLE tv_info (
|
|
videos_id MEDIUMINT(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'FK to video.id',
|
|
summary TEXT CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'Description/summary of the show.',
|
|
publisher VARCHAR(50) CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'The channel/network of production/release (ABC, BBC, Showtime, etc.).',
|
|
localzone VARCHAR(50) CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT 'The linux tz style identifier',
|
|
image TINYINT(1) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'Does the video have a cover image?',
|
|
PRIMARY KEY (videos_id),
|
|
KEY ix_tv_info_image (image)
|
|
)
|
|
ENGINE = MyISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci;
|
|
|
|
DROP TABLE IF EXISTS upcoming_releases;
|
|
CREATE TABLE upcoming_releases (
|
|
id INT(10) NOT NULL AUTO_INCREMENT,
|
|
source VARCHAR(20) NOT NULL,
|
|
typeid INT(10) NOT NULL,
|
|
info TEXT NULL,
|
|
updateddate TIMESTAMP ON UPDATE CURRENT_TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (id),
|
|
UNIQUE INDEX ix_upcoming_source (source, typeid)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS users;
|
|
CREATE TABLE users (
|
|
id INT(16) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
username VARCHAR(50) NOT NULL,
|
|
firstname VARCHAR(255) DEFAULT NULL,
|
|
lastname VARCHAR(255) DEFAULT NULL,
|
|
email VARCHAR(255) NOT NULL,
|
|
password VARCHAR(255) NOT NULL,
|
|
role INT NOT NULL DEFAULT '1',
|
|
host VARCHAR(40) NULL,
|
|
grabs INT NOT NULL DEFAULT '0',
|
|
rsstoken VARCHAR(32) NOT NULL,
|
|
createddate DATETIME NOT NULL,
|
|
resetguid VARCHAR(50) NULL,
|
|
lastlogin DATETIME DEFAULT NULL,
|
|
apiaccess DATETIME DEFAULT NULL,
|
|
invites INT NOT NULL DEFAULT '0',
|
|
invitedby INT NULL,
|
|
movieview INT NOT NULL DEFAULT '1',
|
|
xxxview INT NOT NULL DEFAULT '1',
|
|
musicview INT NOT NULL DEFAULT '1',
|
|
consoleview INT NOT NULL DEFAULT '1',
|
|
bookview INT NOT NULL DEFAULT '1',
|
|
gameview INT NOT NULL DEFAULT 1,
|
|
saburl VARCHAR(255) NULL DEFAULT NULL,
|
|
sabapikey VARCHAR(255) NULL DEFAULT NULL,
|
|
sabapikeytype TINYINT(1) NULL DEFAULT NULL,
|
|
sabpriority TINYINT(1) NULL DEFAULT NULL,
|
|
queuetype TINYINT(1) NOT NULL DEFAULT '1' COMMENT 'Type of queue, Sab or NZBGet',
|
|
nzbgeturl VARCHAR(255) NULL DEFAULT NULL,
|
|
nzbgetusername VARCHAR(255) NULL DEFAULT NULL,
|
|
nzbgetpassword VARCHAR(255) NULL DEFAULT NULL,
|
|
nzbvortex_api_key VARCHAR(10) NULL DEFAULT NULL ,
|
|
nzbvortex_server_url VARCHAR(255) NULL DEFAULT NULL,
|
|
userseed VARCHAR(50) NOT NULL,
|
|
notes VARCHAR(255) NOT NULL,
|
|
cp_url VARCHAR(255) NULL DEFAULT NULL,
|
|
cp_api VARCHAR(255) NULL DEFAULT NULL,
|
|
style VARCHAR(255) NULL DEFAULT NULL,
|
|
rolechangedate DATETIME NULL DEFAULT NULL COMMENT 'When does the role expire',
|
|
PRIMARY KEY (id),
|
|
INDEX ix_role (role)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS users_releases;
|
|
CREATE TABLE users_releases (
|
|
id INT(16) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
users_id INT(16) UNSIGNED NOT NULL,
|
|
releases_id INT NOT NULL COMMENT 'FK to releases.id',
|
|
createddate DATETIME NOT NULL,
|
|
PRIMARY KEY (id),
|
|
UNIQUE INDEX ix_usercart_userrelease (users_id, releases_id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS user_downloads;
|
|
CREATE TABLE user_downloads (
|
|
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
users_id INT(16) UNSIGNED NOT NULL,
|
|
hosthash VARCHAR(50) NOT NULL,
|
|
timestamp DATETIME NOT NULL,
|
|
releases_id INT(11) NOT NULL COMMENT 'FK to releases.id',
|
|
PRIMARY KEY (id),
|
|
KEY userid (users_id),
|
|
KEY timestamp (timestamp)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS user_excluded_categories;
|
|
CREATE TABLE user_excluded_categories (
|
|
id INT(16) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
users_id INT(16) UNSIGNED NOT NULL,
|
|
categories_id INT NOT NULL,
|
|
createddate DATETIME NOT NULL,
|
|
PRIMARY KEY (id),
|
|
UNIQUE INDEX ix_userexcat_usercat (users_id, categories_id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
DROP TABLE IF EXISTS role_excluded_categories;
|
|
CREATE TABLE role_excluded_categories
|
|
(
|
|
id INT(16) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
role INT(11) NOT NULL,
|
|
categories_id INT(11),
|
|
createddate DATETIME NOT NULL,
|
|
PRIMARY KEY (id),
|
|
UNIQUE INDEX ix_roleexcat_rolecat (role, categories_id)
|
|
)
|
|
ENGINE = MyISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
DROP TABLE IF EXISTS user_movies;
|
|
CREATE TABLE user_movies (
|
|
id INT(16) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
users_id INT(16) UNSIGNED NOT NULL,
|
|
imdbid MEDIUMINT(7) UNSIGNED ZEROFILL NULL,
|
|
categories VARCHAR(64) NULL DEFAULT NULL COMMENT 'List of categories for user movies',
|
|
createddate DATETIME NOT NULL,
|
|
PRIMARY KEY (id),
|
|
INDEX ix_usermovies_userid (users_id, imdbid)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS user_requests;
|
|
CREATE TABLE user_requests (
|
|
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
users_id INT(16) UNSIGNED NOT NULL,
|
|
hosthash VARCHAR(50) NOT NULL,
|
|
request VARCHAR(255) NOT NULL,
|
|
timestamp DATETIME NOT NULL,
|
|
PRIMARY KEY (id),
|
|
KEY userid (users_id),
|
|
KEY timestamp (timestamp)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS user_roles;
|
|
CREATE TABLE user_roles (
|
|
id INT(10) NOT NULL AUTO_INCREMENT,
|
|
name VARCHAR(32) NOT NULL,
|
|
apirequests INT(10) UNSIGNED NOT NULL,
|
|
downloadrequests INT(10) UNSIGNED NOT NULL,
|
|
defaultinvites INT(10) UNSIGNED NOT NULL,
|
|
isdefault TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
canpreview TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
hideads TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 4;
|
|
|
|
|
|
DROP TABLE IF EXISTS user_series;
|
|
CREATE TABLE user_series (
|
|
id INT(16) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
users_id INT(16) UNSIGNED NOT NULL,
|
|
videos_id INT(16) NOT NULL COMMENT 'FK to videos.id',
|
|
categories VARCHAR(64) NULL DEFAULT NULL COMMENT 'List of categories for user tv shows',
|
|
createddate DATETIME NOT NULL,
|
|
PRIMARY KEY (id),
|
|
INDEX ix_userseries_videos_id (users_id, videos_id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
|
|
DROP TABLE IF EXISTS video_data;
|
|
CREATE TABLE video_data (
|
|
releases_id INT(11) UNSIGNED NOT NULL COMMENT 'FK to releases.id',
|
|
containerformat VARCHAR(50) DEFAULT NULL,
|
|
overallbitrate VARCHAR(20) DEFAULT NULL,
|
|
videoduration VARCHAR(20) DEFAULT NULL,
|
|
videoformat VARCHAR(50) DEFAULT NULL,
|
|
videocodec VARCHAR(50) DEFAULT NULL,
|
|
videowidth INT(10) DEFAULT NULL,
|
|
videoheight INT(10) DEFAULT NULL,
|
|
videoaspect VARCHAR(10) DEFAULT NULL,
|
|
videoframerate FLOAT(7, 4) DEFAULT NULL,
|
|
videolibrary VARCHAR(50) DEFAULT NULL,
|
|
PRIMARY KEY (releases_id)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci;
|
|
|
|
|
|
DROP TABLE IF EXISTS videos;
|
|
CREATE TABLE videos (
|
|
id MEDIUMINT(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'Show ID to be used in other tables as reference ',
|
|
type TINYINT(1) UNSIGNED NOT NULL DEFAULT '0' COMMENT '0 = TV, 1 = Film, 2 = Anime',
|
|
title VARCHAR(180) CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'Name of the video.',
|
|
countries_id CHAR(2) COLLATE utf8_unicode_ci NOT NULL DEFAULT '' COMMENT 'Two character country code (FK to countries table).',
|
|
started DATETIME NOT NULL COMMENT 'Date (UTC) of production''s first airing.',
|
|
anidb MEDIUMINT(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'ID number for anidb site',
|
|
imdb MEDIUMINT(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'ID number for IMDB site (without the ''tt'' prefix).',
|
|
tmdb MEDIUMINT(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'ID number for TMDB site.',
|
|
trakt MEDIUMINT(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'ID number for TraktTV site.',
|
|
tvdb MEDIUMINT(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'ID number for TVDB site',
|
|
tvmaze MEDIUMINT(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'ID number for TVMaze site.',
|
|
tvrage MEDIUMINT(11) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'ID number for TVRage site.',
|
|
source TINYINT(1) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'Which site did we use for info?',
|
|
PRIMARY KEY (id),
|
|
UNIQUE KEY ix_videos_title (title, type, started, countries_id),
|
|
KEY ix_videos_imdb (imdb),
|
|
KEY ix_videos_tmdb (tmdb),
|
|
KEY ix_videos_trakt (trakt),
|
|
KEY ix_videos_tvdb (tvdb),
|
|
KEY ix_videos_tvmaze (tvmaze),
|
|
KEY ix_videos_tvrage (tvrage),
|
|
KEY ix_videos_type_source (type, source)
|
|
)
|
|
ENGINE = MyISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 10000000;
|
|
|
|
DROP TABLE IF EXISTS videos_aliases;
|
|
CREATE TABLE videos_aliases (
|
|
videos_id MEDIUMINT(11) UNSIGNED NOT NULL COMMENT 'FK to videos.id of the parent title.',
|
|
title VARCHAR(180) CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'AKA of the video.',
|
|
PRIMARY KEY (videos_id, title)
|
|
)
|
|
ENGINE = MyISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 10000000;
|
|
|
|
DROP TABLE IF EXISTS xxxinfo;
|
|
CREATE TABLE xxxinfo (
|
|
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
title VARCHAR(255) NOT NULL,
|
|
tagline VARCHAR(1024) NOT NULL,
|
|
plot BLOB NULL DEFAULT NULL,
|
|
genre VARCHAR(64) NOT NULL,
|
|
director VARCHAR(64) DEFAULT NULL,
|
|
actors VARCHAR(2500) NOT NULL,
|
|
extras TEXT DEFAULT NULL,
|
|
productinfo TEXT DEFAULT NULL,
|
|
trailers TEXT DEFAULT NULL,
|
|
directurl VARCHAR(2000) NOT NULL,
|
|
classused VARCHAR(4) NOT NULL DEFAULT 'ade',
|
|
cover TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
backdrop TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
|
|
createddate DATETIME NOT NULL,
|
|
updateddate DATETIME NOT NULL,
|
|
PRIMARY KEY (id),
|
|
UNIQUE INDEX ix_xxxinfo_title (title)
|
|
)
|
|
ENGINE = MYISAM
|
|
DEFAULT CHARSET = utf8
|
|
COLLATE = utf8_unicode_ci
|
|
AUTO_INCREMENT = 1;
|
|
|
|
DROP TABLE IF EXISTS multigroup_binaries;
|
|
CREATE TABLE multigroup_binaries LIKE binaries;
|
|
|
|
DROP TABLE IF EXISTS multigroup_parts;
|
|
CREATE TABLE multigroup_parts LIKE parts;
|
|
|
|
DROP TABLE IF EXISTS multigroup_missed_parts;
|
|
CREATE TABLE multigroup_missed_parts LIKE missed_parts;
|
|
|
|
|
|
DELIMITER $$
|
|
CREATE TRIGGER check_insert BEFORE INSERT ON releases FOR EACH ROW
|
|
BEGIN
|
|
IF NEW.searchname REGEXP '[a-fA-F0-9]{32}' OR NEW.name REGEXP '[a-fA-F0-9]{32}'
|
|
THEN SET NEW.ishashed = 1;
|
|
ELSEIF NEW.name REGEXP '^\\[ ?([[:digit:]]{4,6}) ?\\]|^REQ\\s*([[:digit:]]{4,6})|^([[:digit:]]{4,6})-[[:digit:]]{1}\\s?\\['
|
|
THEN SET NEW.isrequestid = 1;
|
|
END IF;
|
|
END; $$
|
|
|
|
CREATE TRIGGER check_update BEFORE UPDATE ON releases FOR EACH ROW
|
|
BEGIN
|
|
IF NEW.searchname REGEXP '[a-fA-F0-9]{32}' OR NEW.name REGEXP '[a-fA-F0-9]{32}'
|
|
THEN SET NEW.ishashed = 1;
|
|
ELSEIF NEW.name REGEXP '^\\[ ?([[:digit:]]{4,6}) ?\\]|^REQ\\s*([[:digit:]]{4,6})|^([[:digit:]]{4,6})-[[:digit:]]{1}\\s?\\['
|
|
THEN SET NEW.isrequestid = 1;
|
|
END IF;
|
|
END; $$
|
|
|
|
CREATE TRIGGER check_rfinsert BEFORE INSERT ON release_files FOR EACH ROW
|
|
BEGIN
|
|
IF NEW.name REGEXP '[a-fA-F0-9]{32}'
|
|
THEN SET NEW.ishashed = 1;
|
|
END IF;
|
|
END; $$
|
|
|
|
CREATE TRIGGER check_rfupdate BEFORE UPDATE ON release_files FOR EACH ROW
|
|
BEGIN
|
|
IF NEW.name REGEXP '[a-fA-F0-9]{32}'
|
|
THEN SET NEW.ishashed = 1;
|
|
END IF;
|
|
END; $$
|
|
|
|
CREATE TRIGGER insert_search AFTER INSERT ON releases FOR EACH ROW
|
|
BEGIN
|
|
INSERT INTO release_search_data (releases_id, guid, name, searchname, fromname) VALUES (NEW.id, NEW.guid, NEW.name, NEW.searchname, NEW.fromname);
|
|
END; $$
|
|
|
|
CREATE TRIGGER update_search AFTER UPDATE ON releases FOR EACH ROW
|
|
BEGIN
|
|
IF NEW.guid != OLD.guid
|
|
THEN UPDATE release_search_data SET guid = NEW.guid WHERE releases_id = OLD.id;
|
|
END IF;
|
|
IF NEW.name != OLD.name
|
|
THEN UPDATE release_search_data SET name = NEW.name WHERE releases_id = OLD.id;
|
|
END IF;
|
|
IF NEW.searchname != OLD.searchname
|
|
THEN UPDATE release_search_data SET searchname = NEW.searchname WHERE releases_id = OLD.id;
|
|
END IF;
|
|
IF NEW.fromname != OLD.fromname
|
|
THEN UPDATE release_search_data SET fromname = NEW.fromname WHERE releases_id = OLD.id;
|
|
END IF;
|
|
END; $$
|
|
|
|
CREATE TRIGGER delete_search AFTER DELETE ON releases FOR EACH ROW
|
|
BEGIN
|
|
DELETE FROM release_search_data WHERE releases_id = OLD.id;
|
|
END; $$
|
|
|
|
CREATE TRIGGER insert_hashes AFTER INSERT ON predb FOR EACH ROW BEGIN INSERT INTO predb_hashes (hash, predb_id) VALUES (UNHEX(MD5(NEW.title)), NEW.id), (UNHEX(MD5(MD5(NEW.title))), NEW.id), (UNHEX(SHA1(NEW.title)), NEW.id), (UNHEX(SHA2(NEW.title, 256)), NEW.id);END; $$
|
|
|
|
CREATE TRIGGER update_hashes AFTER UPDATE ON predb FOR EACH ROW BEGIN IF NEW.title != OLD.title THEN DELETE FROM predb_hashes WHERE hash IN ( UNHEX(md5(OLD.title)), UNHEX(md5(md5(OLD.title))), UNHEX(sha1(OLD.title)), UNHEX(sha2(OLD.title, 256))) AND predb_id = OLD.id; INSERT INTO predb_hashes (hash, predb_id) VALUES (UNHEX(MD5(NEW.title)), NEW.id), (UNHEX(MD5(MD5(NEW.title))), NEW.id), (UNHEX(SHA1(NEW.title)), NEW.id), (UNHEX(SHA2(NEW.title, 256)), NEW.id);END IF;END; $$
|
|
|
|
CREATE TRIGGER delete_hashes AFTER DELETE ON predb FOR EACH ROW BEGIN DELETE FROM predb_hashes WHERE hash IN ( UNHEX(md5(OLD.title)), UNHEX(md5(md5(OLD.title))), UNHEX(sha1(OLD.title)), UNHEX(sha2(OLD.title, 256))) AND predb_id = OLD.id;END; $$
|
|
|
|
CREATE TRIGGER insert_MD5 BEFORE INSERT ON release_comments FOR EACH ROW
|
|
SET
|
|
NEW.text_hash = MD5(NEW.text);$$
|
|
|
|
#
|
|
# Stored Procedures
|
|
#
|
|
CREATE PROCEDURE loop_cbpm(IN method CHAR(10))
|
|
COMMENT 'Performs tasks on All CBPM tables one by one -- REPAIR/ANALYZE/OPTIMIZE or DROP/TRUNCATE'
|
|
|
|
main: BEGIN
|
|
DECLARE done INT DEFAULT 0;
|
|
DECLARE tname VARCHAR(255) DEFAULT '';
|
|
DECLARE regstr VARCHAR(255) CHARSET utf8 COLLATE utf8_general_ci DEFAULT '';
|
|
|
|
DECLARE cur1 CURSOR FOR
|
|
SELECT TABLE_NAME
|
|
FROM information_schema.TABLES
|
|
WHERE
|
|
TABLE_SCHEMA = (SELECT DATABASE())
|
|
AND TABLE_NAME REGEXP regstr
|
|
ORDER BY TABLE_NAME ASC;
|
|
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
|
|
|
|
IF method NOT IN ('repair', 'analyze', 'optimize', 'drop', 'truncate')
|
|
THEN LEAVE main; END IF;
|
|
|
|
IF method = 'drop' THEN SET regstr = '^(collections|binaries|parts|missed_parts)_[0-9]+$';
|
|
ELSE SET regstr = '^(multigroup_)?(collections|binaries|parts|missed_parts)(_[0-9]+)?$';
|
|
END IF;
|
|
|
|
OPEN cur1;
|
|
cbpm_loop: LOOP FETCH cur1
|
|
INTO tname;
|
|
IF done
|
|
THEN LEAVE cbpm_loop; END IF;
|
|
SET @SQL := CONCAT(method, ' TABLE ', tname);
|
|
PREPARE _stmt FROM @SQL;
|
|
EXECUTE _stmt;
|
|
DEALLOCATE PREPARE _stmt;
|
|
END LOOP;
|
|
CLOSE cur1;
|
|
END;
|
|
$$
|
|
|
|
|
|
CREATE PROCEDURE delete_release(IN is_numeric BOOLEAN, IN identifier VARCHAR(40))
|
|
COMMENT 'Cascade deletes release from child tables when parent row is deleted'
|
|
COMMENT 'If is_numeric is true, identifier should be the releases_id, if false the guid'
|
|
|
|
main: BEGIN
|
|
|
|
DECLARE where_constr VARCHAR(255) DEFAULT '';
|
|
|
|
IF is_numeric IS TRUE
|
|
THEN
|
|
DELETE r, rn, rc, uc, rf, ra, rs, rv, re, df, rg
|
|
FROM releases r
|
|
LEFT OUTER JOIN release_nfos rn ON rn.releases_id = r.id
|
|
LEFT OUTER JOIN release_comments rc ON rc.releases_id = r.id
|
|
LEFT OUTER JOIN users_releases uc ON uc.releases_id = r.id
|
|
LEFT OUTER JOIN release_files rf ON rf.releases_id = r.id
|
|
LEFT OUTER JOIN audio_data ra ON ra.releases_id = r.id
|
|
LEFT OUTER JOIN release_subtitles rs ON rs.releases_id = r.id
|
|
LEFT OUTER JOIN video_data rv ON rv.releases_id = r.id
|
|
LEFT OUTER JOIN releaseextrafull re ON re.releases_id = r.id
|
|
LEFT OUTER JOIN dnzb_failures df ON df.release_id = r.id
|
|
LEFT OUTER JOIN releases_groups rg ON rg.releases_id = r.id
|
|
WHERE r.id = identifier;
|
|
|
|
ELSEIF is_numeric IS FALSE
|
|
THEN
|
|
DELETE r, rn, rc, uc, rf, ra, rs, rv, re, df, rg
|
|
FROM releases r
|
|
LEFT OUTER JOIN release_nfos rn ON rn.releases_id = r.id
|
|
LEFT OUTER JOIN release_comments rc ON rc.releases_id = r.id
|
|
LEFT OUTER JOIN users_releases uc ON uc.releases_id = r.id
|
|
LEFT OUTER JOIN release_files rf ON rf.releases_id = r.id
|
|
LEFT OUTER JOIN audio_data ra ON ra.releases_id = r.id
|
|
LEFT OUTER JOIN release_subtitles rs ON rs.releases_id = r.id
|
|
LEFT OUTER JOIN video_data rv ON rv.releases_id = r.id
|
|
LEFT OUTER JOIN releaseextrafull re ON re.releases_id = r.id
|
|
LEFT OUTER JOIN dnzb_failures df ON df.release_id = r.id
|
|
LEFT OUTER JOIN releases_groups rg ON rg.releases_id = r.id
|
|
WHERE r.guid = identifier;
|
|
|
|
ELSE LEAVE main;
|
|
END IF;
|
|
|
|
END;
|
|
$$
|
|
|
|
DELIMITER ;
|