Sql 简明教程
SQL Backup Database
在此 SQL 备份数据库教程中,我们将解释如何在 MySQL 和 MS SQL Server 中备份数据库。在原始数据库因电涌或磁盘崩溃等原因损坏或丢失时,拥有数据库备份是非常重要且基本的开发实践。通过练习此操作,可以在数据库发生故障之前对其进行恢复。
Types of Backups in SQL
在 SQL 中,有三种类型的数据库备份可用。它们如下所示:
-
Full Backup
-
Differential Backup
-
Transaction Log (T-log) backup
SQL Full Backup
完整备份是 SQL 服务器数据库的完整备份。
以下是 SQL 完整备份的语法:
BACKUP DATABASE database_name
TO medium = 'filepath'
GO
此处,database_name 是数据库的名称,medium 指存储介质,例如磁盘、磁带或 url。
Restore Database From Backup
要还原数据库中的备份文件,我们可以使用 RESTORE DATABASE 命令。
以下是“从备份恢复数据库”的语法:
RESTORE DATABASE database_name
FROM DISK = 'filepath';
GO
这里,database_name 是数据库的名称,medium 指磁盘、磁带或 url。
MySQL and MS SQL Database Backup and Restore
以下是 MySQL 和 MS SQL 数据库中创建备份的过程。
Backup MySQL Database
MySQL 命令可用于获取给定数据库的完整备份。此操作将通过命令行执行,且需要数据库用户名和密码,最好是有管理权限。
$ mysqldump -u username -p"password" -R testDB > testDB.sql
我们紧跟在我们的密码后面使用 -p 标志,以连接到数据库,其间没有空格。需要 -R 通知 mysqldump 复制存储过程和函数以及数据库中的正常数据。
根据数据库大小,以上命令可能需要一段时间来创建最终输出文件 testDB.sql。一旦该命令完成,你将获得 testDB.sql 文件中的一个完整数据库转储,你可以将其安全地保存在任何地方。之后,此文件可以用作还原数据库。
Restore MySQL Database
如果我们有数据库转储,那么我们可以使用以下两步过程来还原我们的数据库。第一步是使用提示符命令创建我们的新数据库,如下所示:
$ mysqladmin -u username -p"password" create tutorialsDB;
下一步是将旧数据库导入到新数据库中,如下所示:
$ mysql -u username -p"password" tutorialsDB < testDB.sql;
Backup MS SQL Database
如果你使用的是 MS SQL 服务器,那么 SQL 会提供一个简单的 SQL 命令,用于为现有数据库创建备份。
以下是 SQL 中 BACKUP DATABASE 命令的语法:
BACKUP DATABASE database_name
TO DISK = 'filepath'
GO
以下是为数据库创建备份文件的示例,在驱动器上。
SQL> BACKUP DATABASE testDB
TO DISK = 'D:\testDB.bak'
GO
当我们执行上述查询时,输出将获得如下:
Processed 344 pages for database 'testDB', file 'testDB' on file 1.
Processed 2 pages for database 'testDB', file 'testDB_log' on file 1.
BACKUP DATABASE successfully processed 346 pages in 0.011 seconds (245.383 MB/sec).