mysql, перемещение отдельных баз данных или всего каталога данных

mysql, перемещение отдельных баз данных или всего каталога данных

Мне необходимо перенести клиентские базы данных MySQL на другой диск для следующих целей:

 1. Separation of user data from system files
 2. Ease of backing up system and user data separately
 3. Ease of upgrading the system

Следующие статьи оказались полезными:

  [how-to-move-mysql-datadir-to-another-drive][1]
  [move-a-mysql-database-to-another-location][2]

При работе в системе Ubuntu-18 переменная innodb_file_per_table, по-видимому, установлена ​​по умолчанию:

mysql> SHOW GLOBAL VARIABLES LIKE 'innodb_%';
...
| innodb_file_per_table                    | ON 
...

(Те же результаты без GLOBAL)

Я не могу найтилюбойссылка на innodb_file_per_table в любых файлах конфигурации; единственный файл, в котором много информации, это

  /etc/mysql/mysql.conf.d/mysqld.cnf

Меня беспокоит то, что все еще хранится в файлах.

  /var/lib/mysql/ibdata1
                /ib_logfileN

Я заметил, что простой доступ к базе данных приводит к их обновлению.

У меня есть вопросы:

  1. Если я перенесу только клиентские базы данных (на отдельный диск), а системный диск будет утерян и его придется создавать заново с нуля, будет ли что-то потеряно?

  2. Может быть, мне лучше перенести все базы данных, включая (mysql, performance_schema и sys), на отдельный диск?

  3. Может быть, лучше перенести весь каталог данных на отдельный диск, указав на него через переменную «datadir» в /etc/mysql/mysql.conf.d/mysqld.cnf?

  4. Каковы последствиянетиспользовать вариант 3, если системный диск утерян?

решение1

Лучше всего перенести все таблицы MySQL на другой диск. Любая попытка разделить «клиентов» добавит сложности и затруднит достижение ваших целей. (Если это станет обязательным, мы можем обсудить это подробнее.)

По сути, единственный файл, который остается после такого перемещения, — это файл(ы) конфигурации. Вы упомянули /etc/mysql/mysql.conf.d/mysqld.cnf, но там могут быть и другие файлы конфигурации.

Где-то еще есть каталог побольше, содержащий кучу файлов, плюс подкаталоги, которые соответствуют созданным вами "базам данных". Я бы просто переместил все это дерево. Если вы используете ОС на базе Linux, то используйте символическую ссылку из старого расположения в новое. Явных изменений конфигурации не требуется.

Затем, если какой-либо диск выйдет из строя, вы не сможете получить доступ к данным. Я хочу сказать, что игра с файлами и каталогами не обязательно приблизит вас к «безопасности».

Вместо этого сосредоточьтесь на резервном копировании. И/или «Репликации». Последнее требует дополнительныхсервери дает полную копию данных. Тогда, если какой-либо сервер выйдет из строя, вы ничего не потеряете.

LVM — еще один метод резервного копирования; преимущества от наличия диска для базы данных. Но это добавляет кучу сложностей.

Предлагаю вам почитать еще немного и сохранять открытость ума. Вы найдете много того, что напрямую соответствует вашим идеям.

Связанный контент