Cơ sở dữ liệu phát triển theo thời gian, đôi khi vượt ra ngoài không gian trên hệ thống tập tin. RAID, network block storage, và các thiết bị khác có thể cung cấp khả năng dự phòng cũng như các tính năng hấp dẫn khác. Cho dù bạn đang thêm nhiều không gian hơn, đánh giá cách để tối ưu hóa hiệu suất, hoặc tìm cách để tận dụng lợi thế của các tính năng lưu trữ khác. Bài viết sẽ hướng dẫn bạn thông qua việc di chuyển các thư mục dữ liệu MySQL.
Yêu cầu:
- Một máy chủ Ubuntu 16.04;
- Một máy chủ MySQL;
- Một bản sao lưu cơ sở dữ liệu của bạn.
Trong ví dụ này, chúng ta đang di chuyển dữ liệu đến một block storage tại /mnt/volume-nyc1-01.
Hướng dẫn sau có thể giúp bạn di chuyển các thư mục dữ liệu đến một vị trí mới.
Bước 1 - Di chuyển thư mục dữ liệu MySQL
sudo systemctl stop mysql
sudo systemctl status mysql
Máy chủ ngừng hoạt động, chúng ta sẽ chuyển thư mục cơ sở dữ liệu hiện tại đến vị trí mới:
sudo mv /var/lib/mysql /mnt/volume-nyc1-01/mysql
Tiếp theo, chúng ta sẽ tạo các liên kết mềm:
sudo ln -s /mnt/volume-nyc1-01/mysql /var/lib/mysql
Bước 2 - Cấu hình quy tắc kiểm soát truy cập AppArmor
Khi bạn di chuyển thư mục MySQL, bạn sẽ cần phải tạo ra một bí danh (alias) AppArmor.
Thêm bí danh, chỉnh sửa các tập tin bí danh AppArmor:
sudo nano /etc/apparmor.d/tunables/alias
Thêm các quy tắc alias vào dưới cùng của tập tin:
/etc/apparmor.d/tunables/alias
. . .
alias /var/lib/mysql/ -> /mnt/volume-nyc1-01/mysql/,
. . .
Khởi động lại AppArmor:
sudo systemctl restart apparmor
Thự hiện khởi chạy MySQL và kiểm tra
sudo systemctl start mysql
sudo systemctl status mysql
Trong hướng dẫn này, chúng ta đã di chuyển dữ liệu MySQL và sử dụng một liên kết tượng trưng để làm cho MySQL nhận thức được vị trí mới. Chúng ta cũng đã cập nhật AppArmor ACL của Ubuntu để thích ứng với điều chỉnh.
» Tin mới nhất:
» Các tin khác: