[转]MySQL数据库的数据备份和恢复详解
转:http://home.mysql.cn/space-51084-do-blog-id-43.html
本文讨论 MySQL
的备份和恢复机制,以及如何维护数据表,包括最主要的两种表类型:MyISAM 和 Innodb,文中设计的 MySQL 版本为 5.0.22。
目前 MySQL
支持的免费备份工具有:mysqldump、mysqlhotcopy,还可以用 SQL 语法进行备份:BACKUP TABLE 或者 SELECT
INTO OUTFILE,又或者备份二进制日志(binlog),还可以是直接拷贝数据文件和相关的配置文件。MyISAM
表是保存成文件的形式,因此相对比较容易备份,上面提到的几种方法都可以使用。Innodb 所有的表都保存在同一个数据文件 ibdata1
中(也可能是多个文件,或者是独立的表空间文件),相对来说比较不好备份,免费的方案可以是拷贝数据文件、备份 binlog,或者用
mysqldump。
1、mysqldump
1.1 备份
mysqldump 是采用SQL级别的备份机制,它将数据表导成 SQL
脚本文件,在不同的 MySQL 版本之间升级时相对比较合适,这也是最常用的备份方法。现在来讲一下 mysqldump 的一些主要参数:
--compatible=name 它告诉
mysqldump,导出的数据将和哪种数据库或哪个旧版本的 MySQL 服务器相兼容。值可以为
ansi、mysql323、mysql40、postgresql、oracle、mssql、db2、maxdb、no_key_options、
no_tables_options、no_field_options
等,要使用几个值,用逗号将它们隔开。当然了,它并不保证能完全兼容,而是尽量兼容。
--complete-insert,-c 导出的数据采用包含字段名的完整
INSERT 方式,也就是把所有的值都写在一行。这么做能提高插入效率,但是可能会受到 max_allowed_packet
参数的影响而导致插入失败。因此,需要谨慎使用该参数,至少我不推荐。
--default-character-set=charset
指定导出数据时采用何种字符集,如果数据表不是采用默认的 latin1 字符集的话,那么导出时必须指定该选项,否则再次导入数据后将产生乱码问题。
--disable-keys 告诉 mysqldump 在 INSERT
语句的开头和结尾增加 /*!40000 ALTER TABLE table DISABLE KEYS */; 和 /*!40000 ALTER
TABLE table ENABLE KEYS */; 语句,这能大大提高插入语句的速度,因为它是在插入完所有数据后才重建索引的。该选项只适合
MyISAM 表。
--extended-insert = true|false
默认情况下,mysqldump 开启 --complete-insert 模式,因此不想用它的的话,就使用本选项,设定它的值为 false
即可。
--hex-blob
使用十六进制格式导
相关文档:
Linux下进行MYSQL的C++编程起步手记
首先安装必需的开发包
sudo apt-get install gcc g++ libgcc1 libg++ make gdb
安装MYSQL的C语言开发包
sudo apt-get install libmysql++-dev libmysql++2c2a libmysqlclient15-dev libmysqlclient15off
......
如若转载,请尊重个人劳动,务必注明原始出处:(http://blog.csdn.net/iihero/archive/2010/05/13/5585039.aspx)
本文为iihero@CSDN原创。
在前一篇短文里提到了my.ini/cnf的加载顺序:C:\WINDOWS\my.cnf->C:\WINDOWS\my.ini->C:\my.cnf ->C:\my.ini ->$installdir\my.ini。(%MYSQL_HOME%\my.ini)-> ......
MySQL error 2003的解决过程刚才论坛出现:
error 2003:Can't connect to MySQL server on ..............
问题:MYSQL数据库没有启动~
解决:百度了一下,说的解决方法各种各样,很多.
1\在“运行”里找到C:\mysql\bin\mysqld-opt.exe 运行就是了!找了,没有这个东西:(
2 在Dos下 cd \mysql ......
我同学接了个私活,向我要了mysql的安装文件。昨晚他问我有没遇到mysql的乱码问题,我给他的答案是第一次用的时候遇到过,配好了后,现在都没有了。他说在网上找了很多文章,照着改了所有配置文件都没解决。
想想也是,当初第一次用的时候也是一样,改了所 ......
mysql
命令集锦
测试环境:mysql 5.0.45
【注:可以在mysql
中通过mysql>
SELECT VERSION();
来查看数据库版本】
一、连接MYSQL
。
格式: mysql -h
主机地址 -u
用户名
-p
用户密码
1
、连接到本机上的MYSQL
。
首先打开DOS
窗口,然后进入目录mysql\bin
,再键入命令mysql -u r ......