Бэкап одной базы в rescure mode

12
J
На сайте с 06.07.2011
Offline
160
466

Полетел диск на одном сервере,  решил скопировать сайты на другой.

Загрузил сервер в rescure mode, смонтировал диск, поставил на закачку файлы на другой сервер через rsync

Но загвозка вот в чём, как скопировать одну базу данных.

Я запаковал файлы от базы данных: tar cvpzf admin_getonline.tgz mnt/4/mysql/admin_getonline

Будет ли она работать, если я на новом сервере создам базу admin_getonline и скопирую файлы от старой базы?


Посоветуйте пожалуйста как правильно мне это сделать? Нужно скопировать только 1 базу а не все.



lutskboy
На сайте с 22.11.2013
Offline
172
#1

если myisam то сработает просто. для innodb как повезет

вот как я делал. записал на всякий себе

если остались файлы .ibd .frm


создать структуру таблици если возможно. иначе как то с .frm файла 


далее


ALTER TABLE news DISCARD TABLESPACE;


удалит в /var/lib/mysql/news/ все файлы этой тбл


далее cd /var/lib/mysql/news/ и загрузить .ibd файлы и выставить группу и владельца 


chown -R mysql:mysql *


ALTER TABLE news IMPORT TABLESPACE;


/var/lib/mysql/news/ в моем случае. у вас оно другое может быть

Ilya74
На сайте с 12.06.2008
Offline
353
#2

Можно попробовать через chroot. Запустить mysql и сделать дамп через mysqldump.

Также есть более сложный вариант от Selectel: https://selectel.ru/blog/ipkvm-over-qemu/. Если получится, то просто запустите ОС и mysql-сервер, сделаете бэкап через mysqldump. 

⚡️ Хостинг и VPS в Москве, Новосибирске, Нидерландах, США ( https://x5x.host )
HOSTER_BOMBA
На сайте с 08.06.2020
Offline
40
#3
jano :

Будет ли она работать, если я на новом сервере создам базу admin_getonline и скопирую файлы от старой базы?


сработает если версия mysql сервера будет совпадать с той что была на старом сервере.

Европейский хостинг провайдер в Эстонии - https://iphoster.net/ - дешевые KVM VPS в Польше, США, Канаде, Франции, Англии, Нидерландах и Германии от 3.95$. Дешевый shared хостинг от 1$ с панелями Cpanel, ISPManager, DirectAdmin. https://iphwiki.net/ - статьи на тему хостинга.
J
На сайте с 06.07.2011
Offline
160
#4
lutskboy #:

если myisam то сработает просто. для innodb как повезет

вот как я делал. записал на всякий себе

если остались файлы .ibd .frm

создать структуру таблици если возможно. иначе как то с .frm файла 

далее

ALTER TABLE news DISCARD TABLESPACE;

удалит в /var/lib/mysql/news/ все файлы этой тбл

далее cd /var/lib/mysql/news/ и загрузить .ibd файлы и выставить группу и владельца 

chown -R mysql:mysql *

ALTER TABLE news IMPORT TABLESPACE;

/var/lib/mysql/news/ в моем случае. у вас оно другое может быть

Есть только   .ibd .frm файлы. Я не совсем понимаю как мне можно создать структуру таблиц?

J
На сайте с 06.07.2011
Offline
160
#5
Ilya74 #:

Можно попробовать через chroot. Запустить mysql и сделать дамп через mysqldump.

Также есть более сложный вариант от Selectel: https://selectel.ru/blog/ipkvm-over-qemu/. Если получится, то просто запустите ОС и mysql-сервер, сделаете бэкап через mysqldump. 

Спасибо, но думаю из-за одной базы это излишне.

J
На сайте с 06.07.2011
Offline
160
#6
HOSTER_BOMBA #:


сработает если версия mysql сервера будет совпадать с той что была на старом сервере.

С большой долей вероятности, что совпадает. Только как узнать в rescure mode версию mysql?

А если не совпадает, то как нужно действовать?

Ilya74
На сайте с 12.06.2008
Offline
353
#7
jano #:
Спасибо, но думаю из-за одной базы это излишне.

Запуститься через chroot дело пары минут. Так по крайней мере надёжно будет и точно дамп развернётся.

HOSTER_BOMBA
На сайте с 08.06.2020
Offline
40
#8
jano #:

С большой долей вероятности, что совпадает. Только как узнать в rescure mode версию mysql?

А если не совпадает, то как нужно действовать?



# hexdump -s 0x33 -n 2 -v -d имя_таблицы.frm


Вторая колонка будет версия Mysql.

HOSTER_BOMBA
На сайте с 08.06.2020
Offline
40
#9
HOSTER_BOMBA #:
hexdump -s 0x33 -n 2 -v -d


например,

# hexdump -s 0x33 -n 2 -v -d modx_access.frm
0000033   50740
0000035


50740 - ветка mysql 5.7.x

J
На сайте с 06.07.2011
Offline
160
#10
HOSTER_BOMBA #:
hexdump -s 0x33 -n 2 -v -d modx_access.frm

Большое спасибо друг.

Версия mysql идентична.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий