Cara Mengubah Direktori Data MySQL/MariaDB Lalai di Linux
- 1585
- 290
- Clay Weber
Setelah memasang komponen timbunan lampu pada pelayan CentOS/RHEL 7, ada beberapa perkara yang mungkin anda mahu lakukan.
Sebilangan daripada mereka ada kaitan dengan meningkatkan keselamatan Apache dan Mysql / Mariadb, sementara yang lain mungkin terpakai atau tidak mengikut persediaan atau keperluan kami.
Contohnya, berdasarkan penggunaan pelayan pangkalan data yang diharapkan, kami mungkin mahu mengubah lalai data direktori (/var/lib/mysql
) ke lokasi yang berbeza. Ini berlaku apabila direktori sedemikian dijangka berkembang disebabkan oleh penggunaan yang tinggi.
Jika tidak, sistem fail di mana /var
disimpan mungkin runtuh pada satu ketika menyebabkan seluruh sistem gagal. Satu lagi senario di mana menukar direktori lalai adalah apabila kita mempunyai bahagian rangkaian khusus yang ingin kami gunakan untuk menyimpan data sebenar kami.
Atas sebab ini, dalam artikel ini, kami akan menerangkan cara menukar direktori data MySQL/MariaDB lalai ke jalan yang berbeza pada pelayan CentOS/RHEL 7 dan Ubuntu/Debian Distribusi.
Walaupun kita akan menggunakan Mariadb, Konsep -konsep yang dijelaskan dan langkah -langkah yang diambil dalam artikel ini memohon kedua -duanya Mysql dan kepada Mariadb melainkan dinyatakan sebaliknya.
Menukar Direktori Data MySQL/MariaDB lalai
Catatan: Kami akan menganggap bahawa direktori data baru kami adalah /mnt/mysql-data
. Penting untuk diperhatikan bahawa direktori ini harus dimiliki oleh MySQL: MySQL
.
# mkdir /mnt /mysql-data # chown -r mysql: mysql /mnt /mysql-data
Untuk kemudahan anda, kami telah membahagikan proses ke dalam 5 langkah yang mudah diikuti:
Langkah 1: Kenal pasti direktori data MySQL semasa
Untuk memulakan, adalah layak dan baik untuk mengenal pasti direktori data semasa menggunakan arahan berikut. Jangan hanya menganggapnya masih ada /var/lib/mysql
Oleh kerana ia dapat diubah pada masa lalu.
# mysql -u root -p -p -e "pilih @@ datadir;"
Selepas anda memasukkan kata laluan MySQL, output harus serupa dengan.
Kenal pasti Direktori Data MySQLLangkah 2: Salin direktori data MySQL ke lokasi baru
Untuk mengelakkan rasuah data, hentikan perkhidmatan jika sedang berjalan sebelum meneruskan. Menggunakan sistemd Perintah yang terkenal untuk berbuat demikian:
------------- Pada sistem ------------- # Systemctl Stop MariaDB # Systemctl IS-Active MariaDB ------------- Pada sysvinit ------------- # Service Mysqld Stop # Service MySqld Status atau # Service Mysql Stop # Service MySQL Status
Sekiranya perkhidmatan telah diturunkan, output perintah terakhir harus seperti berikut:
Hentikan perkhidmatan MySQLKemudian salin semula kandungannya /var/lib/mysql
ke /mnt/mysql-data
Memelihara kebenaran asal dan cap waktu:
# cp -r -p/var/lib/mysql/*/mnt/mysql -dataSalin direktori data mysql ke lokasi baru
Langkah 3: Konfigurasikan Direktori Data MySQL Baru
Edit fail konfigurasi (saya.cnf
) untuk menunjukkan direktori data baru (/mnt/mysql-data
Dalam kes ini).
# vi /etc /my.CNF atau # VI/ETC/MYSQL/MY.cnf
Cari [mysqld]
dan [Pelanggan]
bahagian dan membuat perubahan berikut:
Di bawah [mysqld]: datadir =/mnt/mysql-data socket =/mnt/mysql-data/mysql.kaus kaki Di bawah [pelanggan]: port = 3306 soket =/mnt/mysql-data/mysql.kaus kaki
Simpan perubahan dan kemudian teruskan dengan langkah seterusnya.
Konfigurasikan Direktori Data MySQL BaruLangkah 4: Tetapkan konteks keselamatan selinux ke direktori data
Langkah ini hanya boleh digunakan untuk RHEL/CENTOS dan derivatifnya.
Tambahkan konteks keselamatan selinux ke /mnt/mysql-data
Sebelum memulakan semula MariaDB.
# semenage fcontext -a -t mysqld_db_t "/mnt/mysql -data (/.*)?" # restorecon -r /mnt /mysql -data
Seterusnya memulakan semula perkhidmatan MySQL.
------------- Pada sistem ------------- # Systemctl Stop MariaDB # Systemctl IS-Active MariaDB ------------- Pada sysvinit ------------- # Service Mysqld Stop # Service MySqld Status atau # Service Mysql Stop # Service MySQL Status
Sekarang, gunakan arahan yang sama seperti dalam Langkah 1 Untuk mengesahkan lokasi direktori data baru:
# mysql -u root -p -p -e "pilih @@ datadir;"Sahkan Direktori Data Baru MySQL
Langkah 5: Buat pangkalan data MySQL untuk mengesahkan direktori data
Log masuk ke MariaDB, buat pangkalan data baru dan kemudian periksa /mnt/mysql-data
:
# mysql -u root -p -p -e "Buat pangkalan data tecmint;"Semak Direktori Data Baru MySQL
Tahniah! Anda telah berjaya menukar direktori data untuk MySQL atau MariaDB.
Ringkasan
Dalam siaran ini, kami telah membincangkan cara menukar direktori data dalam pelayan MySQL atau MariaDB yang dijalankan di CentOS/RHEL 7 dan Ubuntu/Debian Distributions.
Adakah anda mempunyai soalan atau komen mengenai artikel ini? Jangan ragu untuk memberitahu kami menggunakan borang di bawah - kami sentiasa gembira mendengar daripada anda!
- « Cara memasang stesen kerja chef di rhel dan centos 8/7
- 10 Laman Web Berguna untuk Pembelajaran Sistem Pangkalan Data PostgreSQL »