Я установил MySql с помощью :
yum install mysql-server
Он отлично работает с терминала. Я создал базу данных с именем Музыка и создал несколько таблиц внутри этой базы данных. Теперь я хочу перенести всю базу данных на другую машину. Как я могу это сделать ?
В общем, где я могу найти файлы базы данных и файлы таблиц? Я много искал по ключевому слову Музыка но не мог найти.
Теперь я хочу перенести всю базу данных на другую машину. Как я могу это сделать ?
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)
Зависит от того, какой тип 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
но это сбросит все базы данных.
В Debian базы данных хранятся в / var / lib / mysql. Чтобы перенести их, вы можете использовать mysqldump -A -u root -p > dumpfile
и восстановить их на новой машине mysql -u root -p < dumpfile
или путем копирования папок (не забудьте перерезать файлы после передачи).