Работа c linux — различия между версиями

Материал из Меасофт
Перейти к: навигация, поиск
 
(не показано 6 промежуточных версий 2 участников)
Строка 1: Строка 1:
 
Перед прочтением обратите внимание на '''[[Оборудование#Выбор сервера для системы|эту статью]]'''.
 
Перед прочтением обратите внимание на '''[[Оборудование#Выбор сервера для системы|эту статью]]'''.
  
Сервер MeaSoft может работать на операционной системе Linux, но при этом на ней не могут жить службы (автоматизация, чековая служба). Следовательно их необходимо будет разворачивать на другом ПК, который должен будет постоянно работать.  
+
Сервер MeaSoft может работать на операционной системе Linux, но при этом на ней не могут жить службы Windows (автоматизация, чековая служба). Следовательно их необходимо будет разворачивать на другом ПК с Windows, который должен будет постоянно работать.  
  
 
Пользовательское приложение работает только под Windows. Следовательно, если у пользователя Linux система необходимо устанавливать эмулятор или любым другим способом запускать Windows приложение.   
 
Пользовательское приложение работает только под Windows. Следовательно, если у пользователя Linux система необходимо устанавливать эмулятор или любым другим способом запускать Windows приложение.   
  
Для переноса системы на Linux необходимо:
+
'''ВАЖНО! Все ответственность по самостоятельному переносу и установке системы вы принимаете на себя. В случае рассинхронизации и/или прочему нарушению целостности базы данных все работы по ее восстановлению производятся на платной основе.'''
  
#Устанавливаем на новом сервере MySQL версии желательно 5.5.27: точно не старее, а если новее - мы не можем гарантировать 100% совместимость и стабильность сервера БД. Хотя на практике и у нас и у некоторых наших клиентов используются более новые версии, и вроде все ОК, бывали случаи, когда отдельная версия MySQL (вплоть до последней цифры в номере версии) содержит ошибки, приводящие либо к несовместимости с нашей системой, либо к глюкам и падениям самого сервера БД. Поэтому официальная версия 5.5.27, остальное - на свой страх и риск.
+
Существует два способа переноса системы на *nix ОС:
#Конфигурируем его аналогично исходного. Обращаем внимание на параметры:
+
 
innodb_buffer_pool_size
+
1. Перенос с помощью резервных копий данных:
 +
 
 +
1.1 На работающем сервере необходимо снять полные резервные копии всех БД, предварительно остановив внешние сервисы и включив блокировку записи в таблицы (LOCK TABLES). Остановить существующий MySQL, причем таким образом, чтобы чтобы он не включился при, например, перезагрузке - иначе пользователь, у которого не изменен адрес сервера сможет подключиться, 2 БД начнут синхронизироваться с ЛК и произойдет рассинхронизация, что будет иметь плохие последствия.
 +
 
 +
1.2. На новом nix-сервере установить MySQL версии желательно 5.5.27: точно не старее, а если новее - мы не можем гарантировать 100% совместимость и стабильность сервера БД. Хотя на практике и у нас и у некоторых наших клиентов используются более новые версии, и вроде все ОК, бывали случаи, когда отдельная версия MySQL (вплоть до последней цифры в номере версии) содержит ошибки, приводящие либо к несовместимости с нашей системой, либо к глюкам и падениям самого сервера БД. Поэтому официальная версия 5.5.27, остальное - на свой страх и риск.
 +
 
 +
1.2.1. Основные моменты конфигурации нового сервера:
 +
 
 +
innodb_buffer_pool_size - установить максимально возможное значение
  
 
wait_timeout=100
 
wait_timeout=100
Строка 19: Строка 27:
 
innodb_file_per_table=1
 
innodb_file_per_table=1
  
Для Linux еще обязательно
+
lower_case_table_names=1 (ОБЯЗАТЕЛЬНО!)
 +
 
 +
1.3. Перенести файлы резервных копий данных на новый сервер и восстановить базы данных. Завести пользователей, аналогичных использовавшимся на старом сервере (Office и, если нужно, Check и Robot), пароли к ним можно посмотреть в настроечных файлах соответствующих внешних сервисов.
 +
 
 +
1.4. Изменить параметры подключения к серверу внешних сервисов нашей системы.
 +
 
 +
2. Перенос собственно файлов данных. Процесс ничем не отличается от первого описанного способа, кроме нескольких нюансов:
 +
 
 +
2.1. Перед тем, как переносить файлы данных, существующий сервер необходимо остановить так, как описано в п 1.1 предыдущего способа.
 +
 
 +
2.2. Версия MySQL, разворачиваемого на nix-системе, должна ПОЛНОСТЬЮ совпадать с версией работавшего сервера (в абсолютно подавляющем большинстве случаев - это 5.5.27). Если совпадать не будет, то очень вероятны малоприятные коллизии (нужно отметить, что чем больше будут различаться версии, тем неприятности могут быть больше и вероятность их возникновения выше), причем сама возможность возникновения этих коллизий выше, чем при переносе с помощью бэкапов.  Также должны полностью совпадать настройки в файлах my.ini и my.cnf, в последнем ОБЯЗАТЕЛЬНО должен быть включен параметр lower_case_table_names.
 +
 
 +
2.3. После установки и настройки MySQLна nix-сервере, его нужно остановить и перенести в папку, указанную в my.cnf, файлы данных (за исключением файлов логов, а также err и pid  файлов). После этого запустить MySQL. Если все сделано правильно, то все будет работать абсолютно корректно.
  
lower_case_table_names=1
 
  
#Останавливаем и отключаем MySQL на старом сервере. Важно, чтобы он не включился при, например, перезагрузке - иначе пользователь, у которого не изменен адрес сервера сможет подключиться, 2 БД начнут синхронизироваться с ЛК и произойдет рассинхронизация, что будет иметь плохие последствия.
+
Для чистой установки БД необходимо обратиться к нам для получения файлов БД.
# Копируем файлы базы и запускаем MySQL на новом сервере.
 

Текущая версия на 12:48, 31 октября 2022

Перед прочтением обратите внимание на эту статью.

Сервер MeaSoft может работать на операционной системе Linux, но при этом на ней не могут жить службы Windows (автоматизация, чековая служба). Следовательно их необходимо будет разворачивать на другом ПК с Windows, который должен будет постоянно работать.

Пользовательское приложение работает только под Windows. Следовательно, если у пользователя Linux система необходимо устанавливать эмулятор или любым другим способом запускать Windows приложение.

ВАЖНО! Все ответственность по самостоятельному переносу и установке системы вы принимаете на себя. В случае рассинхронизации и/или прочему нарушению целостности базы данных все работы по ее восстановлению производятся на платной основе.

Существует два способа переноса системы на *nix ОС:

1. Перенос с помощью резервных копий данных:

1.1 На работающем сервере необходимо снять полные резервные копии всех БД, предварительно остановив внешние сервисы и включив блокировку записи в таблицы (LOCK TABLES). Остановить существующий MySQL, причем таким образом, чтобы чтобы он не включился при, например, перезагрузке - иначе пользователь, у которого не изменен адрес сервера сможет подключиться, 2 БД начнут синхронизироваться с ЛК и произойдет рассинхронизация, что будет иметь плохие последствия.

1.2. На новом nix-сервере установить MySQL версии желательно 5.5.27: точно не старее, а если новее - мы не можем гарантировать 100% совместимость и стабильность сервера БД. Хотя на практике и у нас и у некоторых наших клиентов используются более новые версии, и вроде все ОК, бывали случаи, когда отдельная версия MySQL (вплоть до последней цифры в номере версии) содержит ошибки, приводящие либо к несовместимости с нашей системой, либо к глюкам и падениям самого сервера БД. Поэтому официальная версия 5.5.27, остальное - на свой страх и риск.

1.2.1. Основные моменты конфигурации нового сервера:

innodb_buffer_pool_size - установить максимально возможное значение

wait_timeout=100

interactive_timeout=100

max_allowed_packet=50M

innodb_file_per_table=1

lower_case_table_names=1 (ОБЯЗАТЕЛЬНО!)

1.3. Перенести файлы резервных копий данных на новый сервер и восстановить базы данных. Завести пользователей, аналогичных использовавшимся на старом сервере (Office и, если нужно, Check и Robot), пароли к ним можно посмотреть в настроечных файлах соответствующих внешних сервисов.

1.4. Изменить параметры подключения к серверу внешних сервисов нашей системы.

2. Перенос собственно файлов данных. Процесс ничем не отличается от первого описанного способа, кроме нескольких нюансов:

2.1. Перед тем, как переносить файлы данных, существующий сервер необходимо остановить так, как описано в п 1.1 предыдущего способа.

2.2. Версия MySQL, разворачиваемого на nix-системе, должна ПОЛНОСТЬЮ совпадать с версией работавшего сервера (в абсолютно подавляющем большинстве случаев - это 5.5.27). Если совпадать не будет, то очень вероятны малоприятные коллизии (нужно отметить, что чем больше будут различаться версии, тем неприятности могут быть больше и вероятность их возникновения выше), причем сама возможность возникновения этих коллизий выше, чем при переносе с помощью бэкапов. Также должны полностью совпадать настройки в файлах my.ini и my.cnf, в последнем ОБЯЗАТЕЛЬНО должен быть включен параметр lower_case_table_names.

2.3. После установки и настройки MySQLна nix-сервере, его нужно остановить и перенести в папку, указанную в my.cnf, файлы данных (за исключением файлов логов, а также err и pid файлов). После этого запустить MySQL. Если все сделано правильно, то все будет работать абсолютно корректно.


Для чистой установки БД необходимо обратиться к нам для получения файлов БД.