CMD mysqldump完成数据库迁移(Xshell类似)
一、D:\PHPStudy\PHPTutorial\MySQL\bin>mysqldump -h host -u username -p dbname > dbname.sql
报错:msyqldump:Got error: 1044:Access denied for user 'bbs'@'172.%' to database 'dx2data' when using LOCK TABLES
解决办法:
加上-skip-lock-tables选项即可。即:
D:\PHPStudy\PHPTutorial\MySQL\bin>mysqldump -h host -u username -p dbname --skip-lock-tables > dbname.sql
但这个方法在数据量过大的话,会出现卡死,所以最好经常检查下sql备份
导入数据库
方法一:
D:\PHPStudy\PHPTutorial\MySQL\bin>mysql -h hostname -u root -p <c:/dx2data.sql
错误如下:
ERROR 1046 (3D000) at line 20:No database selected
解决办法:
1:把需要导入的sql文件(dx2data.sql)拷贝到mysql的bin目录下
2:链接数据库(D:\PHPStudy\PHPTutorial\MySQL\bin>mysql -h hostname -u root -p)
3:切换到需要更新(还原)的数据库,如use dx2data
4:执行命令source dx2data.sql;即可导入
方法二:
D:\PHPStudy\PHPTutorial\MySQL\bin>mysqldump -u用户名 -p密码 -h主机 数据库 < 路径
D:\PHPStudy\PHPTutorial\MySQL\bin>mysqldump -hhost -uroot -p dbname < dbname.sql