centos9 mysql8修改数据库的存储路径

一、环境

系统:CentOS Stream release 9

mysql版本:mysql Ver 8.0.34 for Linux on x86_64 (MySQL Community Server - GPL)

二、修改mysql的数据库,存储路径

查看目录数据存储的位置

bash 复制代码
 cat /etc/my.cnf

操作

1、新建存放的目录,拷贝原数据库内容到新建目录

bash 复制代码
mkdir -p /www/server/mysql

# 关掉mysql服务
systemclt stop mysqld

# 迁移数据
mv /var/lib/mysql/* /www/server/mysql

# 目录授权给mysql用户组
chown -R mysql:mysql /www/server/mysql
# 防止权限不够
chmod 750 /www/server/mysql

关闭selinux

bash 复制代码
# 关闭selinux
setenforce 0

chcon -R -t mysqld_db_t /www/server/mysql

永久关闭

vi /etc/selinux/config

设置 SELINUX=disabled,即可

2、修改mysql配置文件

bash 复制代码
# 修改配置文件,修改datadir socket
vim /ect/my.cnf

my.cnf内容如下

bash 复制代码
[mysqld]
port=3306
user=mysql
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci

datadir=/www/server/mysql
socket=/www/server/mysql/mysql.sock

log-error=/www/log/mysql/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

3、重新初始化配置内容

bash 复制代码
mysqld --defaults-file=/etc/my.cnf  --initialize --user=mysql

4、重启mysql服务

bash 复制代码
systemctl start mysqld

5、用户登录

用户登录mysql -uroot -p 输入密码,提示错误:

bash 复制代码
SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'

mysql.sock是服务启动时候生成的文件,建立软链接

bash 复制代码
ln -s /www/server/mysql/mysql.sock /var/lib/mysql/mysql.sock

重新登录即可

相关推荐
嘻哈baby1 天前
MySQL主从复制与读写分离实战指南
数据库·mysql·adb
Neolnfra1 天前
系统敏感安全文件路径
linux·windows·安全·web安全·网络安全·adb·系统安全
何妨呀~2 天前
mysql 8服务器实验
android·mysql·adb
元气满满-樱2 天前
MySql部署多实例
数据库·mysql·adb
blueSatchel2 天前
adb提示无权限 no permissions (missing udev rules? user is inthe plugdev group)
adb
HinsCoder3 天前
【技能拾遗】——手机远程控制方案(中继服务器版)
服务器·阿里云·adb·智能手机·远程控制·wireguard
Coding_Doggy3 天前
重装系统C盘格式化,MYSQL恢复
c语言·mysql·adb
BatyTao3 天前
vivo真机adb 命令获取手机当前窗口信息
adb·appium
soft20015254 天前
《Rocky Linux 9.6 部署 MySQL 8.0 生产手册(含错误处理)》
linux·mysql·adb
小吴学不废Java4 天前
MySQL慢查询日志分析
android·adb