Есть отдельно стоящая нода Proxmox с LVM thin и диском виртуальной машины 130 - /dev/pve/vm-130-disk-0.
VM удалили, через сутки обнаружили это и остановили остальные VM, чтобы не писали в /dev/pve.
Как водится, внутри VM - mysql и очень нужная база данных.
Актуального бекапа VM и базы mysql нет.Подскажите, как найти и восстановить базу mysql?
Что пробовал без успеха:
1. Восстановить состояние метаданных LVM на момент до удаления VM, в итоге lvs стал показывать искомый volume /dev/pve/vm-130-disk-0, в неактивном состоянии.
В процессе восстановления пришлось использовать lvconvert --repair, который сломал LVM _https://bugs.launchpad.net/ubuntu/+source/lvm2/+bug/1625201
Предложенные workaround с пересозданием tmeta не помогает, при активации /dev/pve/vm-130-disk-0 возникает ошибка:
device-mapper: reload ioctl on (253:7) failed: No data available
2. Искать testdisk-ом по физическому диску /dev/sda3 начала root-партиции внутри VM. Найденые 18 партиций не содержат известных текстовых фрагментов из VM 130.
3. Искать bgrep по всему физическому диску /dev/sda3 текстовые фрагменты из VM 130. Фрагменты обнаруживаются в двух местах физического диска,
возможно VM восстанавливали несколько раз. Всё найденное за границами партиций найденных testdisk.
4. Восстанавливать только таблицы undrop-for-innodb поиском по диску /dev/sda3. Выгрузилось 12 GB страниц разных mysql-баз, включая искомую, но сильно смущает как гигантские номера таблиц при использовании dictionary/SYS_TABLES.sql и как то, что dictionary/SYS_INDEXES.sql ничего по этим номерам не находит, так и общий формат вывода утилиты:
2020203D2020 4E414D455F434F SYS_TABLES "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0std\n\0\0!\0!\0!\0database\_name\0INSERT INTO tbl\_log\_\n SET log\_id " 5643947289462206311 NULL NULL NULL 1600742439 "" 741488441
заметно отличающийся от варианта разработчика из первого ответа здесь:
_https://dba.stackexchange.com/questions/23251/is-there-a-way-to-recover-a-dropped-mysql-database
Внутри /dev/pve/vm-130-disk-0:
# dpkg -l |grep mysql-server-
mysql-server-5.5 5.5.47-0+deb8u1 amd64
# fdisk -l
Disk /dev/sda: 32 GiB, 34359738368 bytes, 67108864 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x65ab60ca
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 64286719 64284672 30.7G 83 Linux
/dev/sda2 64288766 67106815 2818050 1.4G 5 Extended
/dev/sda5 64288768 67106815 2818048 1.4G 82 Linux swap / Solaris
proxmox:
# uname -a
Linux wz020 4.15.18-12-pve #1 SMP PVE 4.15.18-35 (Wed, 13 Mar 2019 08:24:42 +0100) x86_64 GNU/Linux
# pveversion
pve-manager/5.4-3/0a6eaa62 (running kernel: 4.15.18-12-pve)
# pvs
PV VG Fmt Attr PSize PFree
/dev/sda3 pve lvm2 a-- 1.64t 6.00g
# vgs
VG #PV #LV #SN Attr VSize VFree
pve 1 26 0 wz--n- 1.64t 6.00g
Буду благодарен за любые советы и идеи.
Спасибо!