当前位置: 首页 > news >正文

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

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

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

相关文章:

  • [力扣题解] 28. 找出字符串中第一个匹配项的下标
  • 【算法】模拟算法——Z字形变换(medium)
  • Python魔法之旅-魔法方法(08)
  • BearPi-HM Nano开发笔记
  • LiveWeb前端:深度解析与挑战应对
  • net语言编程:深入探索其奥秘与挑战
  • 说说影响网络的因素
  • Java网络编程(上)
  • 【Linux】如何利用linux项目自动化构建工具-make/Makefile以及vim编辑器构建两个小程序:倒计时和进度条
  • go语言基于Gin集成后台管理系统开发定时任务管理cron/v3好用又好看
  • mac 下配置mysql的全局环境变量
  • Spring Cloud Alibaba-09-Seata分布式事务
  • 秋招突击——算法打卡——5/30——复习{最大上升子序列的和、面试算法缺陷补充}——新做:{回文数+补充 自定义Stoi实现、正则表达式匹配}
  • AI科技,赋能企业财务管理
  • ARC学习(2)基本编程模型认识(二)
  • [ 一起学React系列 -- 8 ] React中的文件上传
  • 《Java编程思想》读书笔记-对象导论
  • Android 初级面试者拾遗(前台界面篇)之 Activity 和 Fragment
  • HTML-表单
  • JS题目及答案整理
  • Just for fun——迅速写完快速排序
  • oschina
  • React Native移动开发实战-3-实现页面间的数据传递
  • Yii源码解读-服务定位器(Service Locator)
  • 百度贴吧爬虫node+vue baidu_tieba_crawler
  • 大数据与云计算学习:数据分析(二)
  • 容器化应用: 在阿里云搭建多节点 Openshift 集群
  • 使用权重正则化较少模型过拟合
  • 算法-图和图算法
  • 用 Swift 编写面向协议的视图
  • 责任链模式的两种实现
  • AI又要和人类“对打”,Deepmind宣布《星战Ⅱ》即将开始 ...
  • JavaScript 新语法详解:Class 的私有属性与私有方法 ...
  • Linux权限管理(week1_day5)--技术流ken
  • 交换综合实验一
  • 树莓派用上kodexplorer也能玩成私有网盘
  • #QT(串口助手-界面)
  • #鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行
  • #每日一题合集#牛客JZ23-JZ33
  • #知识分享#笔记#学习方法
  • $.ajax,axios,fetch三种ajax请求的区别
  • ()、[]、{}、(())、[[]]等各种括号的使用
  • (6)添加vue-cookie
  • (PHP)设置修改 Apache 文件根目录 (Document Root)(转帖)
  • (独孤九剑)--文件系统
  • (附源码)springboot助农电商系统 毕业设计 081919
  • (附源码)计算机毕业设计ssm基于Internet快递柜管理系统
  • (力扣题库)跳跃游戏II(c++)
  • (转)C#开发微信门户及应用(1)--开始使用微信接口
  • .NET MVC第五章、模型绑定获取表单数据
  • .Net mvc总结
  • .Net下使用 Geb.Video.FFMPEG 操作视频文件
  • .Net中wcf服务生成及调用
  • .so文件(linux系统)
  • /dev/VolGroup00/LogVol00:unexpected inconsistency;run fsck manually