перемістити папку даних і загнати mysql centos


11

Мені потрібно перемістити дані в іншу папку і диск на моєму сервері cent os os db.

я додав новий жорсткий диск (оскільки ми втратили мало місця),

У мене є 1 Тб жорсткого диска, і у мене є новий 2 Тб, я хочу розмістити дані на одному сервері (виділений сервер, розміщений в центрі обробки даних)

я хотів би знати, який простий спосіб перенести дані, не втрачаючи жодних даних?

В даний час у мене є дані, розташовані в: /var/lib/mysql/ocent os.mysql version is 5.1


@abdelsaid ні, я використовую myisam

Відповіді:


13

Крок 1

Спочатку налаштуйте свій привід (припустимо, що він встановлений та налаштований правильно у fstab) та створіть новий каталог MySQL:

sudo mkdir /path/to/new/mysql

Переконайтеся, що ця папка має правильні дозволи:

chown -R mysql:mysql /data/mysql

Тепер ви можете вимкнути послугу під час копіювання даних. Скопіюйте дані з поточного каталогу даних у новий каталог даних, наприклад:.

sudo cp -R /var/lib/mysql/* /path/to/new/mysql/

або ви можете скопіювати окремо кожну базу даних, якщо хочете, або якщо ви відчуваєте себе в безпеці, ви можете перемістити папку за допомогою mvкоманди.

Крок 2

Ви можете змінити розташування даних MySQL у своїх my.cnf. Якщо ви не знаєте, де цей файл, ви можете запустити команду:

locate my.cnf

Це дасть вам шлях, де знаходиться my.cnf. Потім відредагуйте файл:

sudo vi /etc/mysql/my.cnf (звичайно, ви повинні замінити своїм шляхом)

Тепер шукайте datadir = /var/lib/mysqlта оновлюйте до datadir = /path/to/new/mysql.

Потім перезапустіть mysql

sudo /etc/init.d/mysqld restart

Через кілька днів / тижнів, якщо вам комфортно, ви можете видалити стару папку (/ var / lib / mysql) або створити резервну копію всього всередині.


0

Якщо ви не хочете відключення під час міграції, я б встановив реплікацію master-master на chroot середовище на 2tb з mysql (та ж версія) у ньому, тоді при синхронізації відключіть 1tb і у вас з’явиться робоче середовище chroot.

Якщо ви не хочете використовувати середовище chroot, змініть my.cnf (не chroot), щоб вказати, де ви хочете зберігати свої файли mysql на 2tb диску і відключити реплікацію. Потім вимкніть середовище chroot і перемістіть дані до того, що у вас є в my.cnf, переміщення тут не займе навіть секунди, оскільки воно знаходиться на одному диску. Перезапустіть mysql.

Це трохи складно зробити, ви можете пограти з цим спочатку в локальному vm enironment.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.