Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cách khôi phục cơ sở dữ liệu MySQL từ các tệp .myd, .myi, .frm

Nếu đây là các bảng MyISAM, hãy nhập các tệp .FRM, .MYD và .MYI vào một thư mục cơ sở dữ liệu (ví dụ:/var/lib/mysql/dbname ) sẽ cung cấp bảng đó. Nó không nhất thiết phải là cùng một cơ sở dữ liệu như chúng xuất phát, cùng một máy chủ, cùng một phiên bản MySQL hoặc cùng một kiến ​​trúc. Bạn cũng có thể cần thay đổi quyền sở hữu cho thư mục (ví dụ:chown -R mysql:mysql /var/lib/mysql/dbname )

Lưu ý rằng các quyền (GRANT , v.v.) là một phần của mysql cơ sở dữ liệu. Vì vậy, chúng sẽ không được khôi phục cùng với các bảng; bạn có thể cần chạy GRANT thích hợp các câu lệnh để tạo người dùng, cấp quyền truy cập, v.v. (Khôi phục mysql cơ sở dữ liệu là có thể, nhưng bạn cần phải cẩn thận với các phiên bản MySQL và bất kỳ lần chạy nào cần thiết của mysql_upgrade tiện ích.)

Trên thực tế, bạn có thể chỉ cần .FRM (cấu trúc bảng) và .MYD (dữ liệu bảng), nhưng bạn sẽ phải sửa chữa bảng để xây dựng lại .MYI (chỉ mục).

Hạn chế duy nhất là nếu bạn đang hạ cấp, tốt nhất bạn nên kiểm tra các ghi chú phát hành (và có thể chạy bảng sửa chữa). Tất nhiên, các phiên bản MySQL mới hơn sẽ bổ sung thêm các tính năng.

[Mặc dù cần phải hiển nhiên, nếu bạn trộn và kết hợp các bảng, tính toàn vẹn của mối quan hệ giữa các bảng đó là vấn đề của bạn; MySQL sẽ không quan tâm, nhưng ứng dụng của bạn và người dùng của bạn có thể. Ngoài ra, phương pháp này hoàn toàn không hoạt động đối với các bảng InnoDB. Chỉ MyISAM, nhưng xem xét các tệp bạn có, bạn có MyISAM]



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách cài đặt MySQL 8.0 trên CentOS 8 / RHEL 8

  2. Gọi đến một hàm thành viên thực thi () trên boolean trong

  3. Cơ chế theo dõi các thay đổi giản đồ DB

  4. Làm thế nào để CHỌN bốn mục mới nhất cho mỗi danh mục?

  5. Hàm MySQL CEILING () - Làm tròn đến số nguyên gần nhất