Установка Текдок оригинального

Материал из MstarProject Manual
Версия от 12:13, 26 декабря 2014; Evgeniy.lazarev (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Выкачиваем архивы с базой, картинками и PDF из FTP. Доступ к FTP для каждой версии меняется поэтому надо уточнять.

Распаковка и установка картинок

Картинки Текдока хранятся в нескольких папках, нумеруемых с 1 до 45 (по состоянию на 3кв2013). Мы получаем эти картинки в архивах, каждая папка в отдельном архиве.

Для распаковки можно воспользоваться такой командой:

find ./ -name \*.7z -type f -print0 | xargs -0 -I % 7za x %

И желательно это выполнять в screen, так как процесс достаточно долгий. (На новых серверах надо будет установить 7za и screen, если они не установлены)

Распакованные картинки лучше расположить в папке /var/tecdoc/tecdoc_1303/images (это для 3кв2013) и далее создавать символическую ссылку на эту папку для новых проектов в imgbank/tcd

Распаковка и установка PDF

PDF мы получаем в одном архиве разбитом на несколько частей по 1Гб. Распаковывать обычным способом, например:

7za x tecdoc.2013.3q.pdf.7z.001

Далее надо переместить эти файлы в /var/tecdoc/tecdoc_1303/images/pdf (это для 3кв2013)

Распаковка и установка базы

Так как в пример привожу Текдок 3кв2013, то все названия будут идти для этого квартала, для следующих надо использовать соответствующие названия. Все действия проводить под пользователем root, база открывается под пользователем проекта только с правами select.

Итак, создаем базу tecdoc_1303 сравнение utf8_general_ci. Для упрощения дальнейшего переноса таблицы будем использовать типа MyISAM, поэтому создаем их с помощью скрипта tecdoc.2013.3q.full.structure.mysql.myisam.sql, который мы получаем с FTP.

Далее распаковываем все скрипты по всем таблицам и поочередно их устанавливаем. Пример запроса для mysql всех таблиц:

source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ACCESSORY_LISTS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ACL_CRITERIA.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ALI_COORDINATES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ARTICLES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ARTICLES_NEW.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ARTICLE_CRITERIA.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ARTICLE_INFO.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ARTICLE_LISTS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ARTICLE_LIST_CRITERIA.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ART_COUNTRY_SPECIFICS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ART_LOOKUP.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.AXLES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.AXL_BRAKE_SIZES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.BRANDS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.CONST_PATTERN_LOOKUP.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.COUNTRIES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.COUNTRY_DESIGNATIONS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.CRITERIA.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.CV_CABS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.CV_MARKS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.CV_SECONDARY_TYPES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.DESIGNATIONS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.DES_TEXTS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.DOC_TYPES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ENGINES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ENG_COUNTRY_SPECIFICS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ENG_LOOKUP.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.ERR_TRACK_KEY_VALUES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.FILTERS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.GENERIC_ARTICLES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.GRAPHICS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.KEY_VALUES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LANGUAGES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LA_CRITERIA.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LA_INFO.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_ART.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_ART_GA.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_CAB_TYP.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_GA_CRI.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_GA_STR.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_GRA_ART.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_GRA_LA.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_LA_AXL.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_LA_AXL_NEW.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_LA_ENG.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_LA_ENG_NEW.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_LA_MRK.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_LA_MRK_NEW.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_LA_TYP.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_LA_TYP_NEW.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_SHO_STR.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_SHO_STR_TYPE.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_TYP_AXL.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_TYP_ENG.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.LINK_TYP_MRK.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.MANUFACTURERS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.MODELS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.MOD_TYP_LOOKUP.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.NUMBERPLATES_NL.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.PARAMETERS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.PRICES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.SEARCH_TREE.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.SHORTCUTS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.STR_FAMILY_TREE.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.STR_LOOKUP.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.SUPERSEDED_ARTICLES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.SUPPLIERS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.SUPPLIER_ADDRESSES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.SUPPLIER_LOGOS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.TEXT_MODULES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.TEXT_MODULE_TEXTS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.TYPES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.TYPE_NUMBERS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.TYP_COUNTRY_SPECIFICS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.TYP_SUSPENSIONS.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.TYP_VOLTAGES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.TYP_WHEEL_BASES.sql;
source /home/mstar/tecdoc_1303/tecdoc.2013.3q.full.data.UTILITY_DIRECT.sql;

Далее нам надо переименовать все таблицы в соответствии с названиями используемыми у нас:

RENAME TABLE ACCESSORY_LISTS TO tof__accessory_lists;
RENAME TABLE ACL_CRITERIA TO tof__acl_criteria;
RENAME TABLE ALI_COORDINATES TO tof__ali_coordinates;
RENAME TABLE ARTICLES TO tof__articles;
RENAME TABLE ARTICLES_NEW TO tof__articles_new;
RENAME TABLE ARTICLE_CRITERIA TO tof__article_criteria;
RENAME TABLE ARTICLE_INFO TO tof__article_info;
RENAME TABLE ARTICLE_LISTS TO tof__article_lists;
RENAME TABLE ARTICLE_LIST_CRITERIA TO tof__article_list_criteria;
RENAME TABLE ART_COUNTRY_SPECIFICS TO tof__art_country_specifics;
RENAME TABLE ART_LOOKUP TO tof__art_lookup;
RENAME TABLE AXLES TO tof__axles;
RENAME TABLE AXL_BRAKE_SIZES TO tof__axl_brake_sizes;
RENAME TABLE BRANDS TO tof__brands;
RENAME TABLE CONST_PATTERN_LOOKUP TO tof__const_pattern_lookup;
RENAME TABLE COUNTRIES TO tof__countries;
RENAME TABLE COUNTRY_DESIGNATIONS TO tof__country_designations;
RENAME TABLE CRITERIA TO tof__criteria;
RENAME TABLE CV_CABS TO tof__cv_cabs;
RENAME TABLE CV_MARKS TO tof__cv_marks;
RENAME TABLE CV_SECONDARY_TYPES TO tof__cv_secondary_types;
RENAME TABLE DESIGNATIONS TO tof__designations;
RENAME TABLE DES_TEXTS TO tof__des_texts;
RENAME TABLE DOC_TYPES TO tof__doc_types;
RENAME TABLE ENGINES TO tof__engines;
RENAME TABLE ENG_COUNTRY_SPECIFICS TO tof__eng_country_specifics;
RENAME TABLE ENG_LOOKUP TO tof__eng_lookup;
RENAME TABLE ERR_TRACK_KEY_VALUES TO tof__err_track_key_values;
RENAME TABLE FILTERS TO tof__filters;
RENAME TABLE GENERIC_ARTICLES TO tof__generic_articles;
RENAME TABLE GRAPHICS TO tof__graphics;
RENAME TABLE KEY_VALUES TO tof__key_values;
RENAME TABLE LANGUAGES TO tof__languages;
RENAME TABLE LA_CRITERIA TO tof__la_criteria;
RENAME TABLE LA_INFO TO tof__la_info;
RENAME TABLE LINK_ART TO tof__link_art;
RENAME TABLE LINK_ART_GA TO tof__link_art_ga;
RENAME TABLE LINK_CAB_TYP TO tof__link_cab_typ;
RENAME TABLE LINK_GA_CRI TO tof__link_ga_cri;
RENAME TABLE LINK_GA_STR TO tof__link_ga_str;
RENAME TABLE LINK_GRA_ART TO tof__link_gra_art;
RENAME TABLE LINK_GRA_LA TO tof__link_gra_la;
RENAME TABLE LINK_LA_AXL TO tof__link_la_axl;
RENAME TABLE LINK_LA_AXL_NEW TO tof__link_la_axl_new;
RENAME TABLE LINK_LA_ENG TO tof__link_la_eng;
RENAME TABLE LINK_LA_ENG_NEW TO tof__link_la_eng_new;
RENAME TABLE LINK_LA_MRK TO tof__link_la_mrk;
RENAME TABLE LINK_LA_MRK_NEW TO tof__link_la_mrk_new;
RENAME TABLE LINK_LA_TYP TO tof__link_la_typ;
RENAME TABLE LINK_LA_TYP_NEW TO tof__link_la_typ_new;
RENAME TABLE LINK_SHO_STR TO tof__link_sho_str;
RENAME TABLE LINK_SHO_STR_TYPE TO tof__link_sho_str_type;
RENAME TABLE LINK_TYP_AXL TO tof__link_typ_axl;
RENAME TABLE LINK_TYP_ENG TO tof__link_typ_eng;
RENAME TABLE LINK_TYP_MRK TO tof__link_typ_mrk;
RENAME TABLE MANUFACTURERS TO tof__manufacturers;
RENAME TABLE MODELS TO tof__models;
RENAME TABLE MOD_TYP_LOOKUP TO tof__mod_typ_lookup;
RENAME TABLE NUMBERPLATES_NL TO tof__numberplates_nl;
RENAME TABLE PARAMETERS TO tof__parameters;
RENAME TABLE PRICES TO tof__prices;
RENAME TABLE SEARCH_TREE TO tof__search_tree;
RENAME TABLE SHORTCUTS TO tof__shortcuts;
RENAME TABLE STR_FAMILY_TREE TO tof__str_family_tree;
RENAME TABLE STR_LOOKUP TO tof__str_lookup;
RENAME TABLE SUPERSEDED_ARTICLES TO tof__superseded_articles;
RENAME TABLE SUPPLIERS TO tof__suppliers;
RENAME TABLE SUPPLIER_ADDRESSES TO tof__supplier_addresses;
RENAME TABLE SUPPLIER_LOGOS TO tof__supplier_logos;
RENAME TABLE TEXT_MODULES TO tof__text_modules;
RENAME TABLE TEXT_MODULE_TEXTS TO tof__text_module_texts;
RENAME TABLE TYPES TO tof__types;
RENAME TABLE TYPE_NUMBERS TO tof__type_numbers;
RENAME TABLE TYP_COUNTRY_SPECIFICS TO tof__typ_country_specifics;
RENAME TABLE TYP_SUSPENSIONS TO tof__typ_suspensions;
RENAME TABLE TYP_VOLTAGES TO tof__typ_voltages;
RENAME TABLE TYP_WHEEL_BASES TO tof__typ_wheel_bases;
RENAME TABLE UTILITY_DIRECT TO tof__utility_direct;

Теперь создаем наши дополнительные таблицы и заполняем их данными:

ALTER TABLE `tof__la_criteria` ADD INDEX(`LAC_LA_ID`);

CREATE TABLE IF NOT EXISTS `tof__link_la_typ_view` (
  `LAT_TYP_ID` int(11) NOT NULL DEFAULT '0' COMMENT 'LAT_TYP_ID',
  `LAT_GA_ID` int(11) NOT NULL DEFAULT '0' COMMENT 'LAT_GA_ID',
  `LAT_SUP_ID` smallint(6) DEFAULT NULL COMMENT 'LAT_SUP_ID',
  `GA_DES_ID` int(11) NOT NULL DEFAULT '0' COMMENT 'GA_DES_ID',
  `ART_ID` int(11) NOT NULL DEFAULT '0' COMMENT 'ART_ID',
  `ART_ARTICLE_NR` varchar(66) DEFAULT NULL COMMENT 'varchar(66)',
  KEY `LAT_TYP_ID` (`LAT_TYP_ID`,`LAT_GA_ID`),
  KEY `ART_ARTICLE_NR` (`ART_ARTICLE_NR`),
  KEY `art_id` (`ART_ID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
insert into tof__link_la_typ_view
SELECT LAT_TYP_ID,LAT_GA_ID,LAT_SUP_ID, GA_DES_ID, ART_ID
,replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(UPPER(ART_ARTICLE_NR),' ',''),'-',''),'#',''),'.',''),'/',''),',',''),':',''),'[',''),']',''),'(',''),')','')
FROM tof__link_la_typ
LEFT OUTER JOIN tof__generic_articles on lat_ga_id=ga_id
LEFT OUTER JOIN tof__link_art ON LAT_LA_ID  = LA_ID
INNER JOIN tof__articles ON LA_ART_ID = ART_ID;

CREATE TABLE IF NOT EXISTS `tof__art_lookup_kind3` (
  `ARL_BRA_ID` smallint(6) DEFAULT '0' COMMENT 'smallint',
  `ARL_ART_ID` int(11) DEFAULT '0' COMMENT 'integer',
  `ARL_SEARCH_NUMBER` varchar(105) DEFAULT '' COMMENT 'varchar(105)',
  KEY `ARL_ART_ID` (`ARL_BRA_ID`,`ARL_ART_ID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
insert into `tof__art_lookup_kind3`
SELECT `ARL_BRA_ID`,`ARL_ART_ID`,`ARL_SEARCH_NUMBER` FROM `tof__art_lookup` WHERE `ARL_KIND`='3';

CREATE TABLE IF NOT EXISTS `tof__link_typ_str` (
  `lts_typ_id` int(11) NOT NULL,
  `lts_str_id` int(11) NOT NULL,
  KEY `lts_typ_id` (`lts_typ_id`)
) ENGINE=MyISAM;
insert into  tof__link_typ_str (lts_str_id,lts_typ_id)
select distinct(lgs_str_id) lts_str_id,lat_typ_id lts_typ_id
from tof__link_ga_str
join tof__link_la_typ on lgs_ga_id=lat_ga_id;

Формирование первой таблицы занимает около 20 hours 52 min, второй - чуть больше минуты, третьей - около 1 day 5 hours 4 min (сервер Париж tecdoc_1303)

Повторная установка на другом сервере

Установка с использованием запросов производится только первый раз, для установки на другие сервера можно создать архив файлов базы MySQL из /var/lib/mysql/tecdoc_1303 и скопировать его на другой сервер с последующей распаковкой в аналогичном месте. С файлы картинок и PDF можно поступать на свое усмотрение, но я рекомендую скачивать с ФТП и распаковывать используя шаги описанные в начале.

Доступные языки в Текдоке

1 немецкий

4 английский (Великобритания)

6 французский

7 итальянский

8 испанский

9 голландский

10 датский

11 шведский

12 норвежский

13 финский

14 венгерский

15 португальский

16 русский

17 словацкий

18 чешский

19 польский

20 греческий

21 румынский

23 турецкий

25 сербский

31 китайский

32 болгарский

33 латышский

34 литовский

35 эстонский

36 словенский

37 английский (США)

38 английский (Австралия)