Backup và Restore MySQL Database
Như các bạn đã biết, khi nhắc đến backup và restore mySQL một Database trên hệ điều hành Linux chúng ta thường nghĩ đến việc sử dụng trình quản lý PhpMyAdmin. Tuy nhiên, đối với Database có dữ liệu lớn đến vài GB thì việc sử dụng PhpMyAdmin gặp nhiều rủi ro cho dữ liệu của bạn. Hay trong trường hợp bạn không thể truy cập vào PhpMyAdmin thì bạn làm cách nào?…. Giải pháp mà tuanvd.com đưa ra là backup và restore MySQL Database thông qua chính dòng lệnh khi chúng ta SSH tới Server/VPS. Các bước thực hiện rất đơn giản, như sau:
Bước 1: Kết nối SSH
Bước đầu tiên, các bạn muốn thực thi các câu lệnh trong SSH Command các bạn cần kết nối SSH đến VPS, Server của mình để có thể sử dụng dòng lệnh. Để kết nối SSH có rất nhiều phần mềm, tuy nhiên mình thường dùng phần mềm Putty hoặc Secure CRT trên Windows hay ngay chính ứng dụng Terminal của Mac OS.
Bước 2: Backup MySQL database
Để backup MySQL database trong SSH, thao tác chỉ bằng một câu lệnh đơn giản như sau:
mysql -u root -p password -h host db_name > tenbackupfile.sql
Trong đấy các thành phần, thông số mà bạn cần quan tâm và thay đổi trong câu lệnh cho phù hợp như sau:
- root: Là tài khoản root MySQL (Nó là tài khoản cấp cao nhất đối với MySQL, tuy nhiên khác với tài khoản root đăng nhập SSH các bạn nhé).
- password: Là mật khẩu của tài khoản root mySQL.
- host: Thông thường sẽ là localhost, hoặc địa chỉ MySQL server nếu sử dụng remote MySQL.
- db_name: Là tên MySQL database cần backups.
- tenbackupfile.sql: Là tên file dữ liệu MySQL database sau khi chúng ta backups xong (Chính là File backups mà chúng ta cần).
Bước 3: Restore MySQL database
Đối với việc restore Database MySQL bằng dòng lệnh SSH, câu lệnh các bạn sử dụng cũng gần giống như với khi backup, tuy nhiên có sự khác nhau là ở dấu “<” hay “>” trong câu lệnh. Các thành phần thông số trong câu lệnh cũng tương tự như khi chúng ta tiến hành backup.
Câu lệnh để tiến hành Restore MySQL database sẽ là:
mysql -u root -p password -h host db_name < tenbackupfile.sql
Bài viết này mình sử dụng tài khoản root của MySQL (tức là tài khoản có quyền cao nhất của MySQL trong server – Không phải tài khoản root SSH nhé), tuy nhiên các bạn cũng có thể linh động thay đổi root thành tài khoản của MySQL Database cần backups cũng như mật khẩu của tài khoản đó để sử dụng câu lệnh, kết quả cũng không có gì khác biệt. Ngoài ra, các bạn cũng có thể thay đổi đường dẫn của file .sql tùy theo ý thích của mình. Để thực hiện những điều này, các bạn cần có 1 chút kiến thức cơ bản trong việc quản trị máy chủ Linux.