ฉันต้องการย้ายฐานข้อมูลลูกค้า mysql ไปยังดิสก์อื่น เพื่อวัตถุประสงค์ในการ:
1. การแยกข้อมูลผู้ใช้ออกจากไฟล์ระบบ
2. ความสะดวกในการสำรองระบบและข้อมูลผู้ใช้แยกจากกัน
3. ความง่ายในการอัพเกรดระบบ
บทความต่อไปนี้มีประโยชน์:
[วิธีย้าย mysql-datadir ไปยังไดรฟ์อื่น] [1]
[ย้ายฐานข้อมูล mysql ไปยังตำแหน่งอื่น] [2]
ทำงานบนระบบ ubuntu-18 ดูเหมือนว่าตัวแปร innodb_file_per_table ถูกตั้งค่าเป็นค่าเริ่มต้น:
mysql> แสดงตัวแปรทั่วโลกเช่น 'innodb_%';
...
| innodb_file_per_table | บน
...
(ผลลัพธ์เดียวกันโดยไม่มี GLOBAL)
ฉันไม่สามารถหา ใดๆ อ้างอิงถึง innodb_file_per_table ในไฟล์คอนฟิกูเรชันใดๆ ไฟล์เดียวที่มีมากในนั้นคือ
/etc/mysql/mysql.conf.d/mysqld.cnf
ฉันกังวลเกี่ยวกับสิ่งที่ยังคงถูกจัดเก็บไว้ในไฟล์
/var/lib/mysql/ibdata1
/ib_logfileN
ฉันสังเกตเห็นว่าการเข้าถึงฐานข้อมูลเพียงอย่างเดียวทำให้สิ่งเหล่านี้ได้รับการอัปเดต
คำถามของฉันคือ:
ถ้าฉันย้ายเฉพาะฐานข้อมูลลูกค้า (ไปยังดิสก์แยกต่างหาก) และ
ดิสก์ระบบสูญหายและจำเป็นต้องสร้างใหม่ตั้งแต่ต้น
มีอะไรจะสูญเสีย?
ฉันควรย้ายฐานข้อมูลทั้งหมดรวมถึง (mysql,
performance_schema และ sys) ไปยังดิสก์แยกต่างหาก
ฉันควรย้ายไดเร็กทอรีข้อมูลทั้งหมดไปยังดิสก์แยกต่างหากหรือไม่
ชี้ไปที่ตัวแปร "datadir" ใน /etc/mysql/mysql.conf.d/mysqld.cnf?
แตกแขนงมาจากอะไรบ้าง ไม่ ใช้ตัวเลือก 3 หากดิสก์ระบบสูญหาย