Полное руководство по экспорту и импорту баз данных MySQL через SSH

Экспорт и импорт баз данных MySQL через SSH — распространенная задача при управлении базами данных и миграции данных. SSH (Secure Shell) обеспечивает безопасный способ доступа к удаленным серверам и выполнения команд. В этой статье мы рассмотрим несколько методов экспорта и импорта баз данных MySQL с использованием SSH, а также примеры кода. Эти методы помогут вам эффективно переносить базы данных на разные серверы или создавать резервные копии для безопасного хранения.

Метод 1: использование команды mysqldump
Команда mysqldump — широко используемый инструмент для создания логических резервных копий баз данных MySQL.

Чтобы экспортировать базу данных MySQL через SSH с помощью mysqldump, выполните следующую команду:

mysqldump -u [username] -p [password] [database_name] > [output_file.sql]

Чтобы импортировать базу данных MySQL через SSH с помощью mysqldump, выполните следующие действия:

  1. Создайте пустую базу данных на целевом сервере.
  2. Перенесите экспортированный файл.sql на целевой сервер с помощью SCP (защищенное копирование).
  3. Выполните следующую команду, чтобы импортировать базу данных:
mysql -u [username] -p [password] [database_name] < [input_file.sql]

Метод 2: использование команды mysql
Инструмент командной строки mysql позволяет напрямую выполнять инструкции SQL и может использоваться для импорта и экспорта баз данных.

Чтобы экспортировать базу данных MySQL через SSH с помощью команды mysql, выполните следующую команду:

mysql -u [username] -p [password] -e 'SELECT * FROM [table_name]' [database_name] > [output_file.sql]

Чтобы импортировать базу данных MySQL через SSH с помощью команды mysql, выполните следующие действия:

  1. Создайте пустую базу данных на целевом сервере.
  2. Перенесите экспортированный файл.sql на целевой сервер с помощью SCP.
  3. Выполните следующую команду, чтобы импортировать базу данных:
mysql -u [username] -p [password] [database_name] < [input_file.sql]

Метод 3: использование туннелирования SSH
В некоторых сценариях прямой доступ к серверу базы данных может быть недоступен. SSH-туннелирование позволяет установить безопасное соединение с удаленным сервером и получить доступ к базе данных через локальный порт.

Чтобы экспортировать базу данных MySQL через туннелирование SSH, используйте следующую команду:

ssh -L [local_port]:[database_server]:[remote_port] [ssh_username]@[ssh_server]

После того как туннель установлен, вы можете использовать методы 1 или 2 для экспорта или импорта базы данных MySQL, как если бы она работала локально.

Экспорт и импорт баз данных MySQL через SSH обеспечивает безопасный и эффективный способ передачи или резервного копирования ваших данных. В этой статье мы рассмотрели три метода: использование команды mysqldump, использование команды mysql и использование туннелирования SSH. У каждого метода есть свои преимущества, поэтому выберите тот, который лучше всего соответствует вашим требованиям. С помощью этих методов вы сможете уверенно управлять базами данных MySQL и обеспечить плавный перенос данных.