1.错误1044
【错误信息】:mysqldump: Got error: 1044: Access denied for user 'root'@'%' to database 'hhh' when using LOCK TABLES
【报错原因】:mysqldump 命令执行时,需要四种权限,分别是:select,show view,trigger,lock table。但是因为没有lock table的权限,导致上述错误发生。
【修改方法】在mysqldump命令之后添加--single-transaction 即可。
--single-transaction参数的作用,设置事务的隔离级别为可重复读,即REPEATABLE READ,这样能保证在一个事务中所有相同的查询读取到同样的数据,也就大概保证了在dump期间,如果其他innodb引擎的线程修改了表的数据并提交,对该dump线程的数据并无影响,在这期间不会锁表。
示例:
mysqldump --single-transaction -hIP地址 -p3306 -uroot -p密码 数据库名>D:/hhh.sql
2.错误1045
错误信息:mysqldump: Got error: 1045: Access denied for user 'ucloudbackup'@'10.10.1.242' (using password: YES) when trying to connect
报错条件:无法连接,密码,账户,host,port有问题,通常是密码未加双引号
解决措施:先保证mysql能正常连接
示例:mysqldump -uroot -p
"test@2018"
--all-databases > D:ackupdb_testdb_test_%d%.sql