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

Материал из MstarProject Manual
Перейти к: навигация, поиск

Выкачиваем архивы с базой, картинками и 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;

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

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)

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

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