Khôi phục cơ sở dữ liệu MySQL trong SQL Server

mysql -h localhost -u [Người dùng MySQL, e. g. root] -p[database password] [tên của cơ sở dữ liệu] < [tên của kết xuất sql của bạn, e. g. sqldump. sql]

Xin lưu ý. không có khoảng cách giữa -p và mật khẩu

Nếu không có mật khẩu

mysql -h localhost -u [Người dùng MySQL, e. g. root] [tên của cơ sở dữ liệu] < [tên của kết xuất sql của bạn, e. g. sqldump. sql]

2. Bằng cách sử dụng phpMyAdmin

1. Để khôi phục cơ sở dữ liệu, bấm vào tab SQL

2. Trên trang SQL, bỏ chọn lại Show this query here

3. Duyệt đến bản sao lưu cơ sở dữ liệu của bạn

4. Nhấp vào Đi

Khôi phục cơ sở dữ liệu MySQL trong SQL Server

3. Bằng cách sử dụng cPanel

1. Đăng nhập vào cPanel của bạn

2. Trong phần tệp, nhấp vào Sao lưu

Khôi phục cơ sở dữ liệu MySQL trong SQL Server

3. Trong Khôi phục cơ sở dữ liệu MySQL, nhấp vào Chọn tệp. Tiếp theo, điều hướng trong trình duyệt tệp đến bản sao lưu cơ sở dữ liệu mà bạn muốn khôi phục, nhấp vào nó, sau đó nhấp vào Mở

Khôi phục cơ sở dữ liệu MySQL trong SQL Server

4. Bây giờ bạn sẽ thấy bản sao lưu cơ sở dữ liệu mà bạn đã chọn, hãy tiếp tục và nhấp vào Tải lên

Khôi phục cơ sở dữ liệu MySQL trong SQL Server

5. Cuối cùng, bạn sẽ thấy bản sao lưu đầy đủ đã được khôi phục

Khôi phục cơ sở dữ liệu MySQL trong SQL Server

4. Bằng cách sử dụng Sypex Dumper

Tải xuống Sypex Dumper miễn phí

Nếu bạn có bất kỳ câu hỏi nào liên quan đến việc khôi phục cơ sở dữ liệu MySQL, vui lòng liên hệ với Nhóm hỗ trợ của chúng tôi

Trong bài viết này, tôi sẽ giải thích các cách khác nhau để tạo bản sao lưu trong máy chủ cơ sở dữ liệu MySQL. Như chúng ta đã biết, dữ liệu là tài sản quý giá của tổ chức. Là quản trị viên cơ sở dữ liệu, công việc chính và quan trọng của chúng tôi là giữ cho dữ liệu luôn sẵn có và an toàn. Nếu hệ thống hoặc trung tâm dữ liệu bị lỗi, hỏng cơ sở dữ liệu và mất dữ liệu, chúng tôi phải có khả năng khôi phục nó trong SLA đã xác định

Các nền tảng cơ sở dữ liệu khác nhau cung cấp các phương pháp khác nhau để tạo bản sao lưu và khôi phục cơ sở dữ liệu. Nhiều nhà cung cấp cung cấp các giải pháp phần cứng và phần mềm hiện đại có thể giúp sao lưu cơ sở dữ liệu và có thể khôi phục cơ sở dữ liệu trong RTO và RPO đã xác định

Ở đây, chúng tôi sẽ không thảo luận về bất kỳ giải pháp sao lưu nào của nhà cung cấp bên thứ ba. Tôi sẽ giải thích các phương thức gốc được sử dụng để tạo bản sao lưu của cơ sở dữ liệu. Chúng tôi có thể tạo bản sao lưu của cơ sở dữ liệu MySQL bằng bất kỳ phương pháp nào sau đây

  1. Tạo bản sao lưu bằng tiện ích mysqldump
  2. Tạo bản sao lưu gia tăng bằng Nhật ký nhị phân
  3. Tạo bản sao lưu bằng cách sử dụng Bản sao nô lệ

Trong bài viết này, tôi sẽ giải thích cách chúng ta có thể sử dụng mysqldump để tạo bản sao lưu của cơ sở dữ liệu MySQL

Tạo sao lưu bằng tiện ích mysqldump

Mysqldump là một tiện ích dòng lệnh được sử dụng để tạo bản sao lưu logic của cơ sở dữ liệu MySQL. Nó tạo ra các Câu lệnh SQL có thể được sử dụng để tạo lại các đối tượng và dữ liệu cơ sở dữ liệu. Lệnh này cũng có thể được sử dụng để tạo đầu ra ở định dạng XML, văn bản được phân tách hoặc định dạng CSV

Lệnh này rất dễ sử dụng, nhưng vấn đề duy nhất xảy ra khi khôi phục cơ sở dữ liệu. Như tôi đã đề cập, khi chúng tôi tạo bản sao lưu của cơ sở dữ liệu MySQL, nó sẽ tạo một tệp sao lưu chứa các lệnh SQL cần thiết để xây dựng lại hoặc khôi phục cơ sở dữ liệu. Bây giờ, khi chúng ta khôi phục cơ sở dữ liệu, lệnh sẽ thực thi tất cả các Câu lệnh SQL để tạo bảng và chèn dữ liệu. Nếu bạn có một cơ sở dữ liệu lớn thì quá trình khôi phục sẽ mất nhiều thời gian để hoàn thành

Ghi chú. Theo mặc định, lệnh mysqldump không kết xuất cơ sở dữ liệu information_schema, performance_schema và cơ sở dữ liệu ndbinfo của cụm MySQL

Nếu bạn muốn bao gồm các bảng information_schema, bạn phải chỉ định rõ ràng tên của cơ sở dữ liệu trong lệnh mysqldump, đồng thời bao gồm tùy chọn —skip-lock-tables

Có rất nhiều tùy chọn và tính năng có thể được sử dụng với mysqldump. Bạn có thể xem danh sách đầy đủ các tùy chọn tại đây. Tôi sẽ đi đến một số tính năng cơ bản. Sau đây là cú pháp của tiện ích mysqldump

1

mysqldump -u [người dùng name] p [password] [options] [database_name] [tablename] > [dumpfilename.sql]

Các thông số như sau

  1. -u [tên người dùng]. Đó là tên người dùng để kết nối với máy chủ MySQL. Để tạo bản sao lưu bằng mysqldump, ‘Select‘ để kết xuất bảng, ‘Show View‘ cho chế độ xem, ‘Trigger‘ cho trình kích hoạt. Nếu bạn không sử dụng tùy chọn —giao dịch đơn lẻ, thì phải cấp đặc quyền 'Bảng khóa' cho người dùng
  2. -p [mật khẩu]. Mật khẩu hợp lệ của người dùng MySQL
  3. [Tùy chọn]. Tùy chọn cấu hình để tùy chỉnh sao lưu
  4. [tên cơ sở dữ liệu]. Tên của cơ sở dữ liệu mà bạn muốn sao lưu
  5. [tên bảng]. Đây là một tham số tùy chọn. Nếu bạn muốn sao lưu các bảng cụ thể, thì bạn có thể chỉ định tên trong lệnh
  6. “<” OR ”>”: This character indicates whether we are generating the backup of the database or restoring the database. You can use “>” to generate the backup and “<” to restore the backup
  7. [tên tệp kết xuất. sql]. Đường dẫn và tên của tệp sao lưu. Như tôi đã đề cập, chúng tôi có thể tạo bản sao lưu bằng tệp XML, văn bản được phân tách hoặc tệp SQL để chúng tôi có thể cung cấp phần mở rộng của tệp cho phù hợp

Tạo bản sao lưu của một cơ sở dữ liệu duy nhất

Ví dụ: bạn muốn tạo bản sao lưu của cơ sở dữ liệu duy nhất, hãy chạy lệnh sau. Lệnh sẽ tạo bản sao lưu của cơ sở dữ liệu “sakila” với cấu trúc và dữ liệu trong sakila_20200424. tập tin sql

1

mysqldump -u root -p sakila > C:\Sao lưu MySQL\sakila_20200424. sql

Khi bạn chạy lệnh này, nó sẽ nhắc nhập mật khẩu. Cung cấp mật khẩu phù hợp. Xem hình ảnh sau

Khôi phục cơ sở dữ liệu MySQL trong SQL Server
Khôi phục cơ sở dữ liệu MySQL trong SQL Server

Sau khi backup thành công, chúng ta mở file backup để xem nội dung của file backup. Mở vị trí sao lưu và nhấp đúp vào “sakila_20200424. tập tin sql”

Khôi phục cơ sở dữ liệu MySQL trong SQL Server
Khôi phục cơ sở dữ liệu MySQL trong SQL Server

Như bạn có thể thấy trong hình trên, tệp sao lưu chứa các câu lệnh T-SQL khác nhau có thể được sử dụng để tạo lại các đối tượng

Tạo bản sao lưu của nhiều cơ sở dữ liệu hoặc tất cả các cơ sở dữ liệu

Ví dụ: bạn muốn tạo bản sao lưu của nhiều cơ sở dữ liệu. Bạn phải thêm tùy chọn —databases trong lệnh mysqldump. Lệnh sau sẽ tạo bản sao lưu của cơ sở dữ liệu “sakila” và “nhân viên” với cấu trúc và dữ liệu

1

mysqldump -u root -p --databases sakila employees > C:\Sao lưu MySQL\sakila_employees_20200424. sql

Xem hình ảnh sau

Khôi phục cơ sở dữ liệu MySQL trong SQL Server
Khôi phục cơ sở dữ liệu MySQL trong SQL Server

Tương tự, nếu bạn muốn tạo bản sao lưu của tất cả các cơ sở dữ liệu, bạn phải sử dụng tùy chọn –all-databases trong lệnh mysqldump. Lệnh sau sẽ tạo bản sao lưu của tất cả các cơ sở dữ liệu trong Máy chủ MySQL

1

mysqldump -u root -p --all-databases > C:\Sao lưu MySQL\all_databases_20200424. sql

Xem hình ảnh sau

Khôi phục cơ sở dữ liệu MySQL trong SQL Server
Khôi phục cơ sở dữ liệu MySQL trong SQL Server

Tạo bản sao lưu của cấu trúc cơ sở dữ liệu

Nếu bạn muốn tạo bản sao lưu của cấu trúc cơ sở dữ liệu, thì bạn phải sử dụng tùy chọn –no-data trong lệnh mysqldump. Lệnh sau tạo bản sao lưu cấu trúc cơ sở dữ liệu của cơ sở dữ liệu sakila

1

mysqldump -u root -p --no-data sakila > C:\Sao lưu MySQL\sakila_objects_definition_20200424. sql

Xem hình ảnh sau

Khôi phục cơ sở dữ liệu MySQL trong SQL Server
Khôi phục cơ sở dữ liệu MySQL trong SQL Server

Tạo bản sao lưu của một bảng cụ thể

Nếu bạn muốn tạo bản sao lưu của một bảng cụ thể, thì bạn phải chỉ định tên của các bảng sau tên của cơ sở dữ liệu. Lệnh sau tạo bản sao lưu của bảng diễn viên của cơ sở dữ liệu sakila

1

mysqldump -u root -p sakila actor payment > C:\Sao lưu MySQL\actor_payment_table_20200424. sql

Nếu bạn muốn tạo bản sao lưu của nhiều bảng, thì bạn phải phân tách tên của các bảng bằng dấu cách, lệnh sau sẽ tạo bản sao lưu của diễn viên và bảng thanh toán của cơ sở dữ liệu sakila

Khôi phục cơ sở dữ liệu MySQL trong SQL Server
Khôi phục cơ sở dữ liệu MySQL trong SQL Server

Tạo sao lưu dữ liệu cơ sở dữ liệu

Nếu bạn muốn tạo bản sao lưu dữ liệu mà không có cấu trúc cơ sở dữ liệu, thì bạn phải sử dụng tùy chọn –no-create-info trong lệnh mysqldump. Lệnh sau tạo bản sao lưu dữ liệu của cơ sở dữ liệu sakila

1

mysqldump -u root -p sakila --no-create-info > C:\Sao lưu MySQL\sakila_data_only_20200424. sql

Xem hình ảnh sau

Khôi phục cơ sở dữ liệu MySQL trong SQL Server
Khôi phục cơ sở dữ liệu MySQL trong SQL Server

Hãy cho chúng tôi xem nội dung của tập tin sao lưu

Khôi phục cơ sở dữ liệu MySQL trong SQL Server
Khôi phục cơ sở dữ liệu MySQL trong SQL Server

Như bạn có thể thấy trong ảnh chụp màn hình ở trên, tệp sao lưu chứa các câu lệnh T-SQL khác nhau có thể được sử dụng để chèn dữ liệu vào bảng

Khôi phục cơ sở dữ liệu MySQL

Khôi phục cơ sở dữ liệu MySQL bằng mysqldump rất đơn giản. Để khôi phục cơ sở dữ liệu, bạn phải tạo một cơ sở dữ liệu trống. Đầu tiên, chúng ta hãy thả và tạo lại cơ sở dữ liệu sakila bằng cách thực hiện lệnh sau

1

2

3

4

5

mysql> thả cơ sở dữ liệu sakila;

Truy vấn OK, 24 hàng affected (0.35 giây)

mysql> tạo cơ sở dữ liệu sakila;

Truy vấn OK, 1 hàng affected (0.01 giây)

MySQL>

Khi bạn khôi phục cơ sở dữ liệu, thay vì sử dụng mysqldump, bạn phải sử dụng mysql; . Thực hiện lệnh sau để khôi phục cơ sở dữ liệu sakila

1

mysql -u root -p sakila < C:\Sao lưu MySQL\sakila_20200424. sql

Khi lệnh thực thi thành công, hãy thực hiện lệnh sau để xác minh rằng tất cả các đối tượng đã được tạo trên cơ sở dữ liệu sakila

mysql> sử dụng sakila;
Cơ sở dữ liệu đã thay đổi
mysql> hiển thị bảng;

Xem hình ảnh sau

Khôi phục cơ sở dữ liệu MySQL trong SQL Server
Khôi phục cơ sở dữ liệu MySQL trong SQL Server

Khôi phục một bảng cụ thể trong cơ sở dữ liệu

Chẳng hạn, ai đó đã đánh rơi một bảng khỏi cơ sở dữ liệu. Thay vì khôi phục toàn bộ cơ sở dữ liệu, chúng ta có thể khôi phục bảng bị hủy từ bản sao lưu có sẵn. Để chứng minh, hãy thả bảng diễn viên khỏi cơ sở dữ liệu sakila bằng cách thực hiện lệnh sau trên công cụ dòng lệnh MySQL

1

2

3

mysql> sử dụng sakila;

Cơ sở dữ liệu đã thay đổi

mysql> thả bảng diễn viên;

Để khôi phục bảng diễn viên, hãy thực hiện quy trình từng bước sau

Bước 1

Tạo một cơ sở dữ liệu giả có tên sakila_dummy và khôi phục bản sao lưu của cơ sở dữ liệu sakila trên đó. Sau đây là lệnh

1

2

3

mysql> tạo cơ sở dữ liệu sakila_dummy;

mysql> sử dụng sakila_dummy;

mysql> nguồn C. \Sao lưu MySQL\sakila_20200424. sql

Bước 2

Sao lưu bảng diễn viên vào sakila_dummy_actor_20200424. tập tin sql. Sau đây là lệnh

1

C. \Người dùng\Nisarg> . mysqldump -u root -p sakila_dummy actor > C:\Sao lưu MySQL\sakila_dummy_actor_20200424. sql

Bước 3

Khôi phục bảng diễn viên từ “sakila_dummy_actor_20200424. tập tin sql”. Sau đây là lệnh trên công cụ dòng lệnh MySQL

1

mysql> nguồn C. \Sao lưu MySQL\sakila_dummy_actor_20200424. sql

Thực hiện lệnh sau để xác minh bảng đã được khôi phục thành công

1

2

3

mysql> sử dụng sakila;

Cơ sở dữ liệu đã thay đổi

mysql> hiển thị bảng;

Xem hình ảnh sau

Khôi phục cơ sở dữ liệu MySQL trong SQL Server
Khôi phục cơ sở dữ liệu MySQL trong SQL Server

Tóm lược

Trong bài viết này, tôi đã giải thích cách chúng ta có thể sử dụng tiện ích dòng lệnh mysqldump để tạo các mục sau

Làm cách nào để khôi phục tất cả Cơ sở dữ liệu trong MySQL?

Các tệp sao lưu được tạo bởi tiện ích mysqldump về cơ bản là một tập hợp các câu lệnh SQL có thể được sử dụng để tạo lại cơ sở dữ liệu gốc. Lệnh mysqldump cũng có thể tạo tệp ở định dạng CSV và XML. Bạn cũng có thể sử dụng tiện ích mysqldump để chuyển cơ sở dữ liệu MySQL của mình sang máy chủ MySQL khác

Làm cách nào để khôi phục cơ sở dữ liệu trong SQL Server bằng truy vấn?

Sử dụng SQL Server Management Studio . Nhấp vào loại thao tác khôi phục bạn muốn (Cơ sở dữ liệu, Tệp và Nhóm tệp hoặc Nhật ký giao dịch). Thao tác này sẽ mở hộp thoại khôi phục tương ứng. Trên trang Chung, trong phần Khôi phục nguồn, nhấp vào Từ thiết bị. Right-click the database, point to Tasks, and then click Restore. Click the type of restore operation you want (Database, Files and Filegroups, or Transaction Log). This opens the corresponding restore dialog box. On the General page, in the Restore source section, click From device.

Làm cách nào để sử dụng tệp bak trong SQL Server?

Nhấp vào 'Thêm' để duyệt qua. bak từ thư mục và nhấn OK. .
Mở Studio quản lý máy chủ SQL (SSMS)
Chọn phiên bản cơ sở dữ liệu để sao lưu trong ngăn điều hướng bên trái
Nhấp chuột phải> Nhiệm vụ> Sao lưu
Đối với Đích, chọn Đĩa. Tệp đích phải có phần mở rộng *. BẠC