在本地电脑中如何用命令操作远程服务器上的数据库

日常做服务器维护,经常操作的2个事情,一个是备份远程服务器上的数据库到本地电脑,一个是将备份下来的数据库是恢复到本机做测试用。下面以阿里云的mysql为例,看看怎么弄。电脑是win10系统,先打开cmd命令行模式,再来处理备份和恢复。过程中,会遇到一些问题及处理方法。

一、备份

远程数据库备份到本地电脑

命令描述,mysqldump -h 主机名 -u 用户名 -p 数据库名称 > 本机需要备份的路径\备份的sql名称.sql,案例如下:

sql 复制代码
mysqldump -h abcdefgsdfsdfsfd.mysql.rds.aliyuncs.com -u test -p testdb > E:\dbbak\aliyun\backup_testdb_20240531.sql

输入以上命令回车,就好。电脑出现了一个警告:

Warning: A partial dump from a server that has GTIDs will by default include the GTIDs of all transactions, even those that changed suppressed parts of the database. If you don't want to restore GTIDs, pass --set-gtid-purged=OFF. To make a complete dump, pass --all-databases --triggers --routines --events.

可以改一下,增加--set-gtid-purged=OFF选项,如下:

sql 复制代码
mysqldump -h abcdefgsdfsdfsfd.mysql.rds.aliyuncs.com -u test --set-gtid-purged=OFF -p testdb > E:\dbbak\aliyun\backup_testdb_20240531.sql

如此就不再显示警告信息,使用mysqldump命令操作备份,数据比较完整,数据恢复起来一般不会出错。不过在cmd下操作,有个不好的体验,就是数据备份的过程中没有进度条。直到备份完成,才会显示到当前的命令行,如:C:\Users\Administrator>

二、恢复

如何把上面备份好的sql数据库文件恢复到本地电脑的mysql数据库中?尝试了两种办法,一种是用Navicat for MySql运行sql文件,这个不到一半就卡死了,果断结束放弃。一种是用命令来弄,几百M的数据还是比较顺利。

命令:mysql -u 用户名 -p 数据库名称 < 本机路径\之前备份好的sql文件名称.sql

sql 复制代码
mysql -u test -p testdb < E:\dbbak\aliyun\backup_testdb_20240531.sql

输入以上命令回车,输入密码,就坐等恢复。完成之后,检查一下数据是否恢复完整。看到数据表数量与服务器上的一样,再随机查一下表里的数据也一样,OK搞定。

到此,关于在本地电脑中如何用命令操作远程服务器上的数据库,就完事了。在此记录一下,以免要用的时候找不到,方便自己也方便别人。

相关推荐
Space Chars5 分钟前
【大前端】使用NodeJs HTTP模块创建web服务器、SSE通讯
服务器·前端·http
苹果酱056737 分钟前
Java设计模式:探索编程背后的哲学
java·vue.js·spring boot·mysql·课程设计
zym大哥大1 小时前
网络层IP协议
linux·服务器·网络
长天一色1 小时前
Docker 镜像调试最佳实践
运维·docker·容器
五花肉村长1 小时前
Linux-读者写著问题和读写锁
linux·运维·服务器·开发语言·数据库·visualstudio
凯雀安全2 小时前
在kali中搞个jdk1.8.,又不破坏环境
linux·运维·服务器
christine-rr2 小时前
【25软考网工】第七章(4)DHCP、DNS
运维·服务器·网络·软考
2302_799525742 小时前
【Linux】第二十一章 管理存储堆栈
linux·运维
zhang187021121633 小时前
变电站综合自动化系统
运维·自动化
五步晦暝3 小时前
【Excel 支持正则的方法】解决VBA引入正则的方法和步骤
数据库·mysql·excel