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

重新登录即可

相关推荐
SH11HF1 天前
小菜狗的云计算之旅,今天学习MySQL数据库基础知识及操作
adb
@Ryan Ding2 天前
MySQL主从复制与读写分离概述
android·mysql·adb
feifeigo1232 天前
升级到MySQL 8.4,MySQL启动报错:io_setup() failed with EAGAIN
数据库·mysql·adb
Edingbrugh.南空2 天前
Flink MySQL CDC 环境配置与验证
mysql·adb·flink
陈卓4102 天前
MySQL-主从复制&分库分表
android·mysql·adb
ladymorgana2 天前
【docker】修改 MySQL 密码后 Navicat 仍能用原密码连接
mysql·adb·docker
好奇的菜鸟4 天前
如何在Ubuntu上检查MySQL是否启动并放开3306端口
mysql·ubuntu·adb
OneT1me4 天前
adb shell中执行system用户权限命令的方法
adb
Polaris_YJH4 天前
360安全卫士占用5037端口(ADB端口)解决方案
adb·端口占用·5037
雨之小14 天前
RK3588调试之旅:adbd服务配置全攻略
adb·rk3588