在完成迁移之前,先用下面的指令来停止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远程连接(不推荐)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)