MySQL डेटा डायरेक्टरी रिलोकेशन: चरण-दर-चरण
डेटाबेस वृद्धि या सुरक्षा कारणों से MySQL डेटा डायरेक्टरी (/var/lib/mysql) को नए स्थान (/mnt/data_vol/mysql) पर ले जाएं।
पूर्वापेक्षाएँ
- Ubuntu मशीन, sudo अधिकार
- MySQL इंस्टॉल और कार्यरत
- नया वॉल्यूम/स्थान (उदा. /mnt/data_vol/mysql)
वर्तमान डेटा डायरेक्टरी जांचें
mysql> select @@datadir; +-----------------+ | @@datadir | +-----------------+ | /var/lib/mysql/ | +-----------------+
MySQL रोकें और डेटा कॉपी करें
$ sudo systemctl stop mysql $ rsync -av /var/lib/mysql /mnt/data_vol/
rsync -a अनुमति संरक्षित करता है, -v वर्बोज आउटपुट।
पुराना डायरेक्टरी बैकअप करें
$ sudo mv /var/lib/mysql /var/lib/mysql_backup
कॉन्फ़िगरेशन अपडेट करें (/etc/mysql/mysql.conf.d/mysqld.cnf)
datadir = /mnt/data_vol/mysql/
AppArmor एलियास अपडेट करें (/etc/apparmor.d/tunables/alias)
alias /var/lib/mysql/ -> /mnt/data_vol/mysql/
AppArmor रीस्टार्ट करें, न्यूनतम डायरेक्टरी बनाएं, MySQL शुरू करें:
$ sudo systemctl restart apparmor $ sudo mkdir -p /var/lib/mysql/mysql $ sudo systemctl start mysql
सत्यापन
mysql> select @@datadir; +----------------------+ | @@datadir | +----------------------+ | /mnt/data_vol/mysql/ | +----------------------+
पुराना बैकअप हटाएं:
$ sudo rm -rf /var/lib/mysql_backup
इस प्रक्रिया से MySQL डेटा सुरक्षित रूप से नए स्थान पर स्थानांतरित होता है।