centos7 xtrabackup mysql 基本测试(4)---虚拟机环境 mysql 修改datadir(有问题)

centos7 xtrabackup mysql 基本测试(4)---虚拟机环境 mysql 修改datadir

参考

centos更改mysql数据库目录
https://blog.csdn.net/sinat_33151213/article/details/125079593

https://blog.csdn.net/jx_ZhangZhaoxuan/article/details/129139499

https://dev.mysql.com/doc/refman/8.4/en/selinux-file-context.html

https://developer.aliyun.com/article/1238771

创建目录

c 复制代码
sudo mkdir -p /opt/datadir/

首先,关闭MySQL服务:

c 复制代码
sudo systemctl stop mysqld
sudo systemctl status  mysqld

然后,复制原始datadir目录,作为新的目录:

sudo cp -rp /var/lib/mysql /opt/datadir/

sudo ls /opt/datadir/mysql/

接下来,修改 MySQL配置文件my.cnf:

sudo cp /etc/my.cnf /etc/org_my.cnf

sudo vi /etc/my.cnf

c 复制代码
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/opt/datadir/mysql/
socket=/opt/datadir/mysql/mysql.sock

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

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

保存并关闭文件。此时,需要递归更改新目录的权限,以确保MySQL能够访问其中的数据:

c 复制代码
sudo chown -R mysql:mysql /opt/datadir/mysql
sudo chmod 750 /opt/datadir/mysql

最后,重新启动MySQL服务:

mysql>show variables like '%dir%';

如果启动失败, 使用setenforce 0命令,然后再启动一次试试

c 复制代码
show variables like '%dir';

selinux 与 mysql

semanage

ping www.baidu.com

检查并修改/etc/resolv.conf文件,确保DNS服务器地址正确。

nameserver 8.8.8.8

nameserver 8.8.4.4

CentOS7安装时使用"基础服务器"选项安装, 后发现没有semanage命令.

使用yum查询选项搜索

root@localhost \~\]# yum provides semanage 按照搜索结果安装对应包即可解决 \[root@localhost \~\]# yum install -y policycoreutils-python ```c ping www.baidu.com yum provides semanage /usr/sbin/semanage yum install -y policycoreutils-python-2.5-34.el7.x86_64 semanage semanage fcontext -l|grep mysqld_db_t ls /opt/datadir/mysql/ ls semanage fcontext -a -t mysqld_db_t "/opt/datadir/mysql(/.*)?" restorecon -Rv /opt/datadir/mysql semanage fcontext -l|grep mysqld_db_t ``` sudo systemctl status mysqld mysql -u etc -p show variables like '%dir'; ```c +---------------------------+----------------------------+ | Variable_name | Value | +---------------------------+----------------------------+ | basedir | /usr/ | | character_sets_dir | /usr/share/mysql/charsets/ | | datadir | /opt/datadir/mysql/ | | innodb_data_home_dir | | | innodb_log_group_home_dir | ./ | | innodb_tmpdir | | | lc_messages_dir | /usr/share/mysql/ | | plugin_dir | /usr/lib64/mysql/plugin/ | | slave_load_tmpdir | /tmp | | tmpdir | /tmp | +---------------------------+----------------------------+ 10 rows in set (0.00 sec) ```

相关推荐
沢田纲吉2 小时前
🗄️ MySQL 表操作全面指南
数据库·后端·mysql
Java水解21 小时前
Mysql查看执行计划、explain关键字详解(超详细)
后端·mysql
知其然亦知其所以然1 天前
MySQL 社招必考题:如何优化查询过程中的数据访问?
后端·mysql·面试
DemonAvenger1 天前
NoSQL与MySQL混合架构设计:从入门到实战的最佳实践
数据库·mysql·性能优化
程序新视界1 天前
如何在MySQL中创建聚集索引?
mysql
AAA修煤气灶刘哥2 天前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
程序新视界2 天前
学习MySQL绕不开的两个基础概念:聚集索引与非聚集索引
mysql
RestCloud2 天前
跨境数据传输:ETL如何处理时区与日期格式差异
mysql·api
得物技术2 天前
MySQL单表为何别超2000万行?揭秘B+树与16KB页的生死博弈|得物技术
数据库·后端·mysql
xiaok2 天前
mysql中怎么创建一个可控权限数据库账号密码给到开发者
mysql