MySQL数据库备份为sql文件还原到另一个服务器

1. 备份

因为我本地用了python的anaconda3环境,所以一直有个base,里面也有个mysql,一直无法执行备份,所以需要先执行命令关闭conda

bash 复制代码
conda deactivate

不要自动启动base

bash 复制代码
conda config --set auto_activate_base false

先进入需要备份的服务器上,找到mysql服务是否开启,若开启则继续,否则需要先启动mysql服务。

前提:有数据库访问用户、密码、数据库名,端口号如果不是默认需要加参数**--port=your_port**

如果您想要备份整个数据库,请执行以下mysqldump命令:

mysqldump -q -uyour_user -pyour_password --databases your_database > path_to_your_backup_file.sql

如果您只想备份单个表,则请执行以下mysqldump命令:

mysqldump -q -uyour_user -pyour_password your_database your_tablename > backupfile.sql

your_user是数据库用户名

your_password是数据库密码,

your_database是表所在的数据库名,

your_tablename是需要备份的表名,

backupfile.sql是备份文件名。执行该命令后,会将指定的表备份到backupfile.sql文件中。

2. 还原

切换到你想要还原的服务器上,把上面生成的sql文件复制到这台要还原的机子上。

如果您想要还原整个数据库,请执行以下mysql命令:

mysql -uyour_user -pyour_password --port=3305 dbname < backupfile.sql

如果您只想还原单个表,则请执行以下mysql命令:

mysql -uyour_user -pyour_password --port=3305 dbname < backupfile.sql

**注意:**在上述的命令之中,username是数据库用户名,password是数据库密码,dbname是表所在的数据库名,backupfile.sql是备份文件名。执行该命令后,会将指定的表还原到指定的数据库中。

我用上述命令没起作用,后来尝试了下面这种方式:

如果下面想要直接使用文件,先cd 命令到backupfile.sql所在的目录,然后执行命令

bash 复制代码
# 输入命令进入mysql
mysql -u username -p --port=3306 

# 输入你的用户的密码, enter后进入mysql

# 输入命令切换数据库:
use your_database;

# 输入命令还原数据库:
SOURCE backupfile.sql 
相关推荐
无名-CODING5 分钟前
Spring事务管理完全指南:从零到精通(上)
java·数据库·spring
fengxin_rou9 分钟前
【黑马点评实战篇|第一篇:基于Redis实现登录】
java·开发语言·数据库·redis·缓存
我待_JAVA_如初恋12 分钟前
Redis常用的数据类型之String
数据库·redis·缓存
@ chen13 分钟前
MySQL 中的锁机制
数据库·mysql
Elastic 中国社区官方博客18 分钟前
Elasticsearch:使用 Elastic Workflows 构建自动化
大数据·数据库·人工智能·elasticsearch·搜索引擎·自动化·全文检索
OnYoung22 分钟前
编写一个Python脚本自动下载壁纸
jvm·数据库·python
Apple_羊先森23 分钟前
ORACLE数据库巡检SQL脚本--15、表空间的运行状态
数据库·sql·oracle
数据与人1 小时前
ksql 元命令完整帮助
数据库·oracle
m0_581124191 小时前
Python日志记录(Logging)最佳实践
jvm·数据库·python
大黄说说1 小时前
打通异构数据库:PostgreSQL 通过 mysql_fdw 实现 MySQL 透明查询实战
数据库·mysql·postgresql