Где я могу найти файл базы данных и файлы таблиц?

Я установил MySql, используя:

yum install mysql-server

Он работает нормально из терминала. Я создал базу данных с именем music и создал несколько таблиц внутри этой базы данных. Теперь я хочу перенести всю базу данных на другую машину. Как я могу это сделать?

В общем, где я могу найти файлы базы данных и файлы таблиц? Я много искал по ключевому слову music, но не смог его найти.

3 ответа

Решение

Теперь я хочу перенести всю базу данных на другую машину. Как я могу это сделать?

mysqldump -u root -p music | mysql -u root -p -h <other.machine.ip.addr>

В общем, где я могу найти файлы базы данных и файлы таблиц?

Они расположены в datadir MySQL:

ls $(awk -F= '/datadir/ { print $2 }' /etc/my.cnf)

В Debian базы данных хранятся в /var/lib/mysql. Для их портирования вы можете использовать mysqldump -A -u root -p > dumpfile и восстановить их в новой машине mysql -u root -p < dumpfile или путем копирования папок (не забудьте скопировать файлы после переноса).

Зависит от того, какой тип движка SQL вы используете. Вероятно, InnoDB, который хранит все базы данных в нескольких файлах (обычно /var/lib/mysql/ibdata*). Так что для резервного копирования вам нужно будет использовать mysqldump,

Для резервного копирования используйте что-то вроде этого:

mysqldump --hex-blob -u${BUSER} -p${BPASS} ${database} -r  ${BACKUP_DIR}/${database}.mysql

Для восстановления скопируйте ${BACKUP_DIR}/${database}.mysql на другой компьютер и выполните:

mysql -u${BUSER} -p ${database} < ${database}.mysql

Конечно, не забудьте сначала создать пустую базу данных CREATE DATABASE name, Также, как уже предлагалось, вы можете использовать -A с mysqldump но это сбросит все базы данных.

Другие вопросы по тегам