linux中mysql命令方式备份数据的问题

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介: <p>这几天公司新出了个组件化的项目,里面需要用到mysql数据库相关的技术,由于之前一直用的mongodb,所以mysql几乎忘光了,于是只能在linux虚拟机中重新开始学习。</p> <p>基本的增删改查还好,但是在数据备份的上遇到了一些问题,好在一番尝试之后终于成功。</p> <p><br></p> <p>Mysql的api以及网上说的备份命令是:mysqldump  -uro

这几天公司新出了个组件化的项目,里面需要用到mysql数据库相关的技术,由于之前一直用的mongodb,所以mysql几乎忘光了,于是只能在linux虚拟机中重新开始学习。

基本的增删改查还好,但是在数据备份的上遇到了一些问题,好在一番尝试之后终于成功。


Mysql的api以及网上说的备份命令是:mysqldump  -uroot –p 要备份的数据库名> 目标路径/目标文件名.sql,于是我就照着敲了一遍,但是结果报了一个2002的异常(补充:一开始用这个命令的时候是提示找不到mysqldump的,后来用了软连接ln把mysqldump命令实际地址连接到usr/bin):

mysqldump:Got error: 2002: Can't connect to local MySQL server through socket'/tmp/mysql.sock' (2) when trying to connect,如图1:


 


于是查了资料以后,我又进行了一些修改,如图2:

 



但是呢,这时候2002是没有了,取而代之的却是有出现了1045错误:mysqldump: Got error: 1045: Access denied for user 'root'@'localhost'(using password: YES) when trying to connect,如图3:



 

估摸着这意思应该是说root用户和localhost权限方面有问题,因为我记得我在设置mysql远程访问的时候把host都设置成了%,如图4:



 

于是又在网上搜索了一下之后,又找到了另一个备份方面的命令,尝试之后发现可行,如图5:



 

至此,已经在linux虚拟机中成功备份mysql数据库,但是这个命令未免就太长了,再想到mysql的api说的应该总不会错吧,于是便想着优化一下。

那么,既然1045出现的错误我已经大概能猜到是用户权限的问题,于是便从这里下手,没有root的localhost,那就加上吧。进入数据库,使用mysql,如图4,然后添加用户,如图6:



再次查看user表,可以发现成功添加,如图7:


 

那么备份的命令便可以变成优化之后的了,如图8:



 

显而易见,命令变短了,只是依旧还不够短,于是再次查找资料后找到了一个解决办法,需要把mysql.sock的实际指向地址给链接到2002错误中的地址,我的修改如图9:


 

那么最后,大概就是见证奇迹的时刻了吧,该验证api上的说法了:输命令,回车,再次成功备份,至此算是大功告成了,如图10:


 

总结一下,备份的话这里可以细分为三种命令方式,只是勉强弄懂了的话就知道其实还是一种而已。
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1天前
|
关系型数据库 MySQL Linux
服务器Linux系统配置mysql数据库主从自动备份
这是一个基本的配置主从复制和设置自动备份的指南。具体的配置细节和命令可能因您的环境和需求而有所不同,因此建议在操作前详细阅读MySQL文档和相关资源,并谨慎操作以避免数据丢失或不一致。
10 3
|
2天前
|
安全 网络协议 Linux
linux必学的60个命令
Linux是一个功能强大的操作系统,提供了许多常用的命令行工具,用于管理文件、目录、进程、网络和系统配置等。以下是Linux必学的60个命令的概览,但请注意,这里可能无法列出所有命令的完整语法和选项,仅作为参考
|
2天前
|
监控 Linux 数据处理
|
2天前
|
编解码 Ubuntu Linux
|
2天前
|
JSON Linux 数据格式
Linux命令发送http
请注意,`curl`命令非常灵活,可以根据您的需求进行多种配置和自定义。您可以查看 `curl`命令的文档以获取更多详细信息。
9 0
|
3天前
|
关系型数据库 MySQL 数据库连接
用Navicat备份Mysql演示系统数据库的时候出:Too Many Connections
用Navicat备份Mysql演示系统数据库的时候出:Too Many Connections
|
3天前
|
存储 关系型数据库 MySQL
MySQL是怎样存储数据的?
MySQL是怎样存储数据的?
|
3天前
|
存储 缓存 Linux
xenomai内核解析--xenomai与普通linux进程之间通讯XDDP(三)--实时与非实时数据交互
本文介绍了Xenomai中的XDDP(Xenomai Distributed Data Protocol)通信机制,XDDP用于实时和非实时进程之间的数据交换。XDDP在Xenomai内核中涉及的数据结构和管理方式,以及创建XDDP通道后的实时端和非实时端连接过程。
8 0
xenomai内核解析--xenomai与普通linux进程之间通讯XDDP(三)--实时与非实时数据交互
|
4天前
|
安全 Linux 测试技术
|
4天前
|
安全 Linux Windows
Linux中Shutdown命令使用介绍
Linux中Shutdown命令使用介绍
10 2