首页 > 技术文章 > mysql在cmd下备份数据与还原

super-ccl 2022-03-15 18:08 原文

在cmd窗口下访问mysql,需将mysql下bin的目录加入到环境变量的path中

 mysql服务的启动和停止,一般会将mysql添加到系统服务当中,随系统启动而启动

net stop mysql
net start mysql
登录mysql

mysql -uroot -p123 -h localhost -P 13306
查看secure_file_priv配置,如果值为null,限制数据导入导出,修改mysql.ini配置文件,新增行或将值设置为空,如果设置了具体值, 数据的导入导出只能在该文件夹进行,修改配置文件之后,需重启mysql服务才会生效

SELECT @@global.secure_file_priv
#mysql.ini
secure_file_priv ="D:\\wanchuang\\mysql\\tmp"
备份数据库
mysqldump -uroot -p123 -h localhost -P 13306 databasename > D:/wanchuang/mysql/tmp/databasename.sql
备份表

mysqldump -uroot -p123 -h localhost -P 13306 databasename tablename > D:/wanchuang/mysql/tmp/tablename.sql
//根据查询条件备份表 --add-drop-table=FALSE 导出的sql不生成drop表语句 --no-create-info=TRUE 不生成create表语句 --no-create-db=TRUE 不生成create数据库语句 --where 指定导出的条件
mysqldump -uroot -p123 -h localhost -P 13306 databasename --no-create-db=TRUE --no-create-info=TRUE --add-drop-table=FALSE --where="create_time >= '2021-04-01'" tablename > D:/wanchuang/mysql/tmp/tablename_20210401.sql
还原数据库或表

mysql -uroot -p123 -h localhost -P 13306 databasename < D:/wanchuang/mysql/tmp/tablename.sql

 命令行模式下执行sql实现数据导入

use databasename;//选择数据库
source D:/wanchuang/mysql/tmp/tablename.sql;//选择执行的sql文件

 

推荐阅读