WEB开发网
开发学院数据库MySQL MySQL备份和恢复 阅读

MySQL备份和恢复

 2007-02-13 10:53:32 来源:WEB开发网   
核心提示: --quick,-q该选项在导出大表时很有用,MySQL备份和恢复(3),它强制 mysqldump 从服务器查询取得记录直接输出而不是取得所有记录后将它们缓存到内存中,--routines,而是 mysql 客户端提供的功能,例如:SOURCE /tmp/db_name.sql;这里需要

--quick,-q

该选项在导出大表时很有用,它强制 mysqldump 从服务器查询取得记录直接输出而不是取得所有记录后将它们缓存到内存中。

--routines,-R

导出存储过程以及自定义函数。

--single-transaction

该选项在导出数据之前提交一个 BEGIN SQL语句,BEGIN 不会阻塞任何应用程序且能保证导出时数据库的一致性状态。它只适用于事务表,例如 InnoDB 和 BDB。

本选项和 --lock-tables 选项是互斥的,因为 LOCK TABLES 会使任何挂起的事务隐含提交。

要想导出大表的话,应结合使用 --quick 选项。

--triggers

同时导出触发器。该选项默认启用,用 --skip-triggers 禁用它。

其他参数详情请参考手册,我通常使用以下 SQL 来备份 MyISAM 表:

/usr/local/mysql/bin/mysqldump -uyejr -pyejr --default-character-set=utf8 --opt --extended-insert=false

--triggers -R --hex-blob -x db_name > db_name.sql

使用以下 SQL 来备份 Innodb 表:

/usr/local/mysql/bin/mysqldump -uyejr -pyejr --default-character-set=utf8 --opt --extended-insert=false

--triggers -R --hex-blob --single-transaction db_name > db_name.sql

1.2 还原

用 mysqldump 备份出来的文件是一个可以直接倒入的 SQL 脚本,有两种方法可以将数据导入。

直接用 mysql 客户端

例如:

/usr/local/mysql/bin/mysql -uyejr -pyejr db_name < db_name.sql

用 SOURCE 语法

其实这不是标准的 SQL 语法,而是 mysql 客户端提供的功能,例如:

SOURCE /tmp/db_name.sql;

这里需要指定文件的绝对路径,并且必须是 mysqld 运行用户(例如 nobody)有权限读取的文件。

上一页  1 2 3 4 5 6  下一页

Tags:MySQL 备份 恢复

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接