CentOS7下mysql数据库的迁移

CentOS7下mysql数据库的迁移,第1张

想知道你的mysql装在哪里吗?CentOS7一般是装在/var/lib/mysql中的

在完成迁移之前,先用下面的指令来停止mysqld服务

service mysqld stop,或者直接点sudo systemctl stop mysqld

然后用df-h指令看服务器上剩余空间是多少,假设我们新挂了一块500G的硬盘到/data上

那么请把mysql整个文件夹拷贝到/data中,像下面这样:

sudo cp -rf /var/lib/mysql /data/mysql,拷完以后原来的mysql文件夹就可以删除了

然后再修改/etc/my.cnf,这个也是需要su的:

sudo vi /etc/my.cnf

里面有一个字段叫[mysqld],将datadir和socket修改成这样:

datadir=/data/mysql

socket=/data/mysql/mysql.sock

接下来,有的人说要修改/etc/init.d/mysqld,但我的服务器不需要,直接通过

service mysqld start就可以启动SQL服务了,远程也可以连接上,但是:

当你使用终端mysql -u root -p的时候,就会报下面这个错:

Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'

这个时候,你有两种解决办法,一种是造一个软连接

ln -s /data/mysql/mysql.sock /var/lib/mysql/mysql.sock,原因是你已经删掉之前的mysql目录了

另外一种办法,是在/etc/my.cnf下面新建一个新字段:

[mysql]

socket=/data/mysql/mysql.sock

第一种方法不需要重启mysql server,第二种方法需要重启mysql server,

然后,你就可以成功地从终端里进入mysql了

敲黑板,不要在[mysql]下面自做主张地写上datadir=/data/mysql,这样会导致本地命令行登录时报错:Unknown Variable: datadir=/data/mysql

查看是否安装MySQL数据库

如有(xxx 为文件全名):

卸载依赖包

RPM方式安装MySQL数据库:

如报错:

安装 Mysql 包

安装 Mysql 静等安装

如果执行命令过程中提示:Unable to find a match: mysql-community-server 可以通过命令解决

如果提示失败的软件包是:mysql-community-server-5.7.38-1.el7.x86_64 GPG 密钥配置为:file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

在yum install 版本后面加上 --nogpgcheck,即可绕过GPG验证成功安装。比如

启动

查看 Mysql 运行状态

看到这个绿色就表示启动成功了

连接数据库

报错

解决办法:

修改my.in/my.cnf配置

在[mysqld]下添加

重启

查看 Mysql 运行状态

连接数据库

直接回车

进入数据库自己修改一个密码

密码不满足当前策略要求解决方法(不推荐)

可以看到当前密码长度要求为8,安全等级为MEDIUM,我们把长度改为4,等级改为LOW

8.0版本输入命令:

5.7版本输入命令:

修改密码

【解决办法】 MySQL版本5.7.6版本以前用户可以使用如下命令:

MySQL版本5.7.6版本开始的用户可以使用如下命令:

MySQL 允许IP远程连接(不推荐)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9569223.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存