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


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

    一、备份

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

    命令描述,mysqldump -h 主机名 -u 用户名 -p 数据库名称 > 本机需要备份的路径\备份的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选项,如下:

    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

    mysql -u test -p testdb < E:\dbbak\aliyun\backup_testdb_20240531.sql

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

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

  • 相关阅读:
    【C/C++内功心法】剖析编译链接的过程,探究源文件是如何一步步变成可执行程序,提升C/C++内功
    配置管理新纪元:Eureka引领分布式服务配置潮流
    java中的多线程
    Spring Cloud Alibaba微服务第22章之Oauth2
    数学推理题:张王李赵陈五对夫妇聚会,见面握手
    基于xml的Spring应用(理解spring注入)
    新手程序员怎么接单?
    实验(三):单片机I/O口实验-模拟开关灯
    options.css 内容优化2 --chatPGT
    在LangChain中使用Milvus + openai使用
  • 原文地址:https://blog.csdn.net/hnhdl/article/details/139354395