在CentOS7下查看并修改MySQL数据存放目录

软件版本

  1. CentOS 7
  2. MySQL 5.7

查看数据存放目录

使用命令

SHOW VARIABLES LIKE '%datadir%';

# 或者
SELECT @@datadir;

得到默认存放目录:/var/lib/mysql

移动数据

停止mysql服务

systemctl stop mysqld

新建数据存放目录

mkdir -p /data01/mysql/data

复制数据

将mysql目录复制到/data01/mysql/data目录下

cp  -a /var/lib/mysql /data01/mysql/data/ 

给目录添加权限

chown -R mysql:mysql /data01/mysql/data/mysql 
chown -R mysql:mysql /data01/mysql/data

修改配置my.cnf

打开/etc/my.cnf文件, 找到[mysqld]关键字,修改datadir和socket的值

[mysqld]
datadir=/data01/mysql/data/mysql
socket=/data01/mysql/data/mysql/mysql.sock

重启mysql服务

systemctl start mysqld

问题

错误现象

重启后,项目可正常访问数据库,但是使用命令行访问数据库会报错:

mysql -uroot -p
......
Can't connect to local MySQL server through socket '/var/lib/mysql'
......

解决

修改/etc/my.cnf, 找到[client]段,添加配置

[client]
default-character-set=utf8mb4
port=3306
socket=/data01/mysql/data/mysql/mysql.sock

socket字段有可能不存在,添加即可。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值