mysql5.1数据库备份_MySQL 5.1 mysqldump导出备份

MySQL 5.1 mysqldump导出备份

最近在工作的时候,要将原来在本机开发的 MySQL存储过程迁往另一Linux操作系统下的MySQL数据库,因为表结构等已经在目标数据库中存在了,

不想直接拷贝数据库过去,所以用到了 MySQL的存储过程导出和导入,经上网搜索发现用Mysqldump工具可以实现,具体用法为:

[root@localhost bin]# mysqldump -uroot -p -hlocalhost -P3306 -n -d -t -R DBName > procedure_name.sql

参数说明:

-n:   --no-create-db (没有创建数据库的信息)

-d:   --no-data     (不导出数据)

-t:   --no-create-info (没有创建数据库表的信息)

-R:   --routines      Dump stored routines (functions and procedures)

-E:  --events  (导出数据库中events)

-A:  --all-databases (导出所有的数据库)

-B:  --databases db1 db2 (导出指定的数据库)

Mysqldump是客户端工具用来备份数据库或在不同数据库之间进行数据迁移。备份内容包含创建活装载表的SQL语句:

主要参数介绍:

1.连接选项

-u,--user=name

-p,--password=name

-h,--host=name

-P,--port=#

2.输出内容选项

--add-drop-database (默认是自动加上的)

--add-drop-table     (默认是自动加上的)

-n;--no-create-db

-d;--no-data

-t;--no-create-info

3.输出格式选项

--compact (精简格式,将导出时的一些备注省略)

-c --complete-insert (导出数据的语句中,在insert to table values后加上各个字段,如insert into table(tab1,tab2,…) values(value1,value2,…))

-T(指定数据表中的数据备份为单纯的数据文件和建表SQL两个文件)

在mysqldump帮助文档中的说明:

-T, --tab=name      Creates tab separated textfile for each table to given

path. (creates .sql and .txt files).NOTE: This only

works if mysqldump is run on the same machine as the

mysqld daemon.

这里提示,使用-T参数时必须保证运行mysqldump命令的客户端必须与mysqld服务器实例在同一台机器上。经

测试可知xx.sql建表文件是以linux的root用户创建,而xx.txt文件则是以linux的mysql用户创建,因此xxx.txt文件的存

放路径一定要保证mysql用户有读写创建文件的权限。在远程利用-T备份mysql的表时是不允许的,如果你非的这么使用你会发现在本地仅仅会创建

xxx.sql文件,而xxx.txt文件则没有,它有可能在远程运行mysqld的服务器上出现(仅仅是可能,保证远程运行mysqld的linux服

务器和本地linux有相同的路径和用户权限)。

--fields-terminated-by=name(域分隔符)

--fields-enclosed-by=name(域引用符)

--fields-optionally-enclosed-by=name(域引用可选字符)

--fields-escaped-by=name(转义字符)

域引用符和域引用可选字符在一次导出中不能同时使用,域引用可选字符只对认为需要引用的字段作引用,而域引用符对所有的字段都要作引用。

4.字符集选项

--default--character-set=xx

5.其他选项

-F --flush-logs(备份前刷新日志)

-l --lock-tables(给所有的表加读锁)

©著作权归作者所有:来自51CTO博客作者yubowei的原创作品,如需转载,请注明出处,否则将追究法律责任

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值