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

日常做服务器维护,经常操作的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搞定。

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

相关推荐
人工智能训练3 小时前
【极速部署】Ubuntu24.04+CUDA13.0 玩转 VLLM 0.15.0:预编译 Wheel 包 GPU 版安装全攻略
运维·前端·人工智能·python·ai编程·cuda·vllm
_F_y3 小时前
MySQL用C/C++连接
c语言·c++·mysql
pengdott3 小时前
Oracle RAC内存融合技术深度解析:集群性能的幕后引擎
数据库·oracle
微露清风4 小时前
系统性学习Linux-第二讲-基础开发工具
linux·运维·学习
csudata4 小时前
绿色便携版PostgreSQL发行版重磅发布
数据库·postgresql
阳光九叶草LXGZXJ5 小时前
达梦数据库-学习-48-DmDrs控制台命令(同步之Manager、CPT模块)
linux·运维·数据库·sql·学习
五岳5 小时前
DTS按业务场景批量迁移阿里云MySQL库实战(上):技术选型和API对接
mysql·阿里云·dts
我科绝伦(Huanhuan Zhou)5 小时前
脚本再升级,兼容Oracle 26ai一键安装
数据库·oracle
野生绿箭侠6 小时前
Ncos 2.3.2 版本集成达梦数据库
数据库
仍然.6 小时前
MYSQL--约束
数据库·mysql