实时搜索: mysqldump 在哪

mysqldump 在哪

712条评论 2445人喜欢 1925次阅读 436人点赞
在进行mysqldump的时候有两个参数一直不明白.
--master-data=2
--single-transaction
我的疑问是:加了master-data参数,没加single-transaction怎么保证我备份的数据的一致性????
我做过几个实验.加了master-data没加single-transaction,备份出来还原到从库,然后从库在同步,居然没报错...
按照参数的说明,如果我在dump的时候记录了这个备份点,在这个备份点之后的事务被提交,又被dump出来了...那为什么在同步的时候不报错???
引擎是innod...

mysqldump 和mysql 有什么关系: mysqldump 和mysql是mysql数据库的两个工具,其中1.mysqldump 是mysql数据库的备份和恢复工具,例如

mysqldump -uroot -p test>bk.sql
输入密码后将test备份到bk.sql文件里;
2.mysql是mysql数据库的客户端工具,用于命令行操作mysql执行sql语句,例如登录用
mysql -uroot -p 密码
进入后显示为
mysql> ?????
?可以输入mysql命令和可执行的sql语句

关于mysqldump的一个疑问: 1 mysqldump导出数据主要有两种控制:一种是导出的全过程都加锁 lock-all-tables, 另一种则是不加。前者会在导出开始时执行 FLUSH TABLES WITH READ LOCK; 也就是加全局读锁,会阻塞其它写操作,以保证导出是一致性的;因此只有在导出测试数据时或导出时没有业务连接操作时可不加 lock-all-tables .
至于说一致性导出的另一种方式 single-transaction, 则是有适用范围的,见下边。

2 single-transaction 选项和 lock-all-tables 选项是二选一的,前者是在导出开始时设置事务隔离状态并使用一致性快照开始事务,而后马上unlock tables,然后执行导出,导出过程不影响其它事务或业务连接,但只支持类似innodb多版本特性的引擎,因为必须保证即使导出期间其它操作(事务点t2)改变了数据,而导出时仍能取出导出开始的事务点t1时的数据。而lock-all-tables则一开始就 FLUSH TABLES WITH READ LOCK; 加全局读锁,直到dump完毕。
-- 关于一致性快照,简单地说,就是通过回滚段能记录不同的事务点的各版本数据
-- single-transaction 的流程如下:
SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ
START TRANSACTION /*!40100 WITH CONSISTENT SNAPSHOT */
SHOW MASTER STATUS -- 这一步就是取出 binlog index and position
UNLOCK TABLES
...dump...

3 master_data 选项开启时默认会打开lock-all-tables,因此同时实现了两个功能,一个是加锁,一个是取得log信息。
master_data取1和取2的区别,只是后者把 change master ... 命令注释起来了,没多大实际区别;

4 当master_data和 single_transaction 同时使用时,先加全局读锁,然后设置事务一致性和使用一致性快照开始事务,然后马上就取消锁,然后执行导出。过程如下
FLUSH TABLES WITH READ LOCK
SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ
START TRANSACTION /*!40100 WITH CONSISTENT SNAPSHOT */
SHOW MASTER STATUS -- 这一步就是取出 binlog index and position
UNLOCK TABLES
...dump...

5 总结,了解了这些选项作用后,使用起来就明确了.
如果需要binlog信息则使用 master_data;
如果不想阻塞同时表是innodb引擎可使用 single_transaction 取得一致性快照(取出的数据是导出开始时刻事务点的状态)
如果表不支持多版本特性,则只能使用 lock-all-tables 阻塞方式来保证一致性的导出数据。
当然,如果能保证导出期间没有任何写操作,可不加或关闭 lock-all-tables

mysqldump可以实现在线备份数据库吗: (1)导出整个数据库(包括数据库中的数据)
mysqldump -u username -p dbname > dbname.sql
(2)导出数据库结构(不含数据)
mysqldump -u username -p -d dbname > dbname.sql
(3)导出数据库中的某张数据表(包含数据)
mysqldump -u username -p dbname tablename > tablename.sql
(4)导出数据库中的某张数据表的表结构(不含数据)
mysqldump -u username -p -d dbname tablename > tablename.sql

如何升级mysqldump client: 1 确保安装了同一版本的mysql-server, mysql-client, mysql-shared; 2 如果还提示找不到libmysqlclient.so.16 ,使用下面定位so位置并建立软链接; >whereis libmysqlclient.so.16 >ldd /usr/bin/mysqldump --这个会使用那些so及路径,也包括了

mysqldump备份文件怎么去掉插入语句: 导出整个数据库结构(不包含数据,-d参数)
mysqldump -d -uroot -p123456 database > dump.sql
导出整个数据库数据(不包含结构,-t参数)
mysqldump -t -uroot -p123456 database > dump.sql

按提问者的要求,那就是加-t参数即可

如何解读使用mysqldump生成的.sql文件: 找到mysql的bin目录

如果mysqldump加入环境变量了,就不用找了。
运行mysqldump -uroot -ppassword db>/路径/db.sql

mysqldump导入数据库,出现"拒绝访问": 首先尝试
c:> mysql -uroot -p123456

如果可以正常进入
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.1.58-community MySQL Community Server (GPL)

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL v2 license

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

可以正常进入!

尝试数据库连接
mysqldump -uroot -p123456 test

如果这个也可以 大部分的问题 可能是你对你要输出文件夹没有写的权限

mysqldump的时候字符集设置错误请问如何恢复: mysqldump 导出时设置下字符集 加上参数 --set-default-character=uft8即你自己设置的编码 导出试试看

  • 18375083203是谁的电话号码

    截止提问时间,波音787全国还有多少架订单?世界呢?: 中国国航、南航、海航和厦航分别与波音公司签署了41架波音787梦想飞机订单。波音787飞机于2011年末投入商业运营,迄今已交付运营50架,其中全日空航空公司与日本航空公司是大客户,分别拥有17架和7架。目前,波音公...

    581条评论 4212人喜欢 5657次阅读 371人点赞
  • 18k多少一克

    为什么现在QQ游戏不能改名字了: 能是网络不畅造成的,建议你换个好的时段或网络环境重新修改名字尝试。你也可以先完全卸载原先的游戏大厅及所有QQGAME游戏(建议从添加删除程序处进行完全卸载),然后重新安装试试 ...

    724条评论 1042人喜欢 4937次阅读 392人点赞
  • mysql怎么重启

    新余到成都要多少时: 车次:K787,出发站:新余,到达站:成都东,历时:23:00车次:K1271,出发站:新余,到达站:成都,历时:43:26 ...

    483条评论 4529人喜欢 4360次阅读 542人点赞
  • 1500米怎样短时间训练

    QQ改群名字改不了: 哈哈哈 我的也是这种情况 而且群头像也换不了 估计系统有问题吧 ...

    276条评论 2711人喜欢 3766次阅读 682人点赞
  • dnf婚房属性怎么弄

    南京飞新加坡787-9酷航要多久?: 5小时50分钟 ...

    584条评论 4364人喜欢 3665次阅读 867人点赞
  • 11月什么花开

    7月6号到达州的k787现在在那个位置,会晚点多久: 你好,现在该车次列车具体在那个位置是查询不到的,关于晚点时间请耐心等待成都铁路局通知 ...

    904条评论 4261人喜欢 4841次阅读 938人点赞
  • 1147列车是几个座位

    为什么我的qq改不了名字: 现在系统正在修复,所以不能改头像昵称。可以在设置的【帮助】那里找“为什么不能改昵称?”谢谢,此答案为真3.12 ...

    544条评论 5963人喜欢 4547次阅读 766人点赞
  • 跳舞鞋哪个牌子好

    QQ名字怎么改不了: 1.你的网速过慢,网页代码没有完全下载就运行了,导致不完整,当然就错误了。请刷新。2.网页设计错误,导致部分代码不能执行。请下载最新的遨游浏览器。3.你的浏览器不兼容导致部分代码不能执行。请下载最新的遨游浏览器。4....

    208条评论 4591人喜欢 5335次阅读 492人点赞