mysql拷贝data文件数据库文件_MySQL数据库迁移data文件夹位置详细步骤

2022-06-29 08:45:42

由于yum安装mysql的时候,数据库的data目录默认是在/var/lib下,出于数据安全性的考虑需要把它挪到/data分区。步骤如下:

一、关闭apache和mysql.

复制代码 代码如下:

service httpd stop

service mysqld stop

二、将/var/lib下的mysql目录mv(移动)到data目录。

为什么要用mv命令,而不用cp命令呢?应为linux文件系统特殊性,mv命令能保留文件的所有属性和权限,尤其是selinux属性。如果用cp命令,就需要回头再去设置mysql文件夹的selinux属性,本人因很头疼selinux故能避则避。

复制代码 代码如下:

mv -R /var/lib/mysql /data/mysql

三、修改mysql配置文件/etc/my.cnf。将datadir和socket的路径改为/data目录下。

复制代码 代码如下:

[mysqld]

#datadir=/var/lib/mysql                      ------原系统默认路径

datadir=/home/mysql ------现有路径

#socket=/var/lib/mysql/mysql.sock            ------原socket路径现

socket=/home/mysql/mysql.sock                ------现有路径

[mysqld_safe]

socket=/home/mysql/mysql.sock                 -----现有路径

[client]

socket=/home/mysql/mysql.sock                 -----现有路径

[mysql.server]

socket=/home/mysql/mysql.sock                 -----现有路径

四、修改php配置文件(/etc/php.ini)中的socket路径。

没错,千万不要忘记了php.ini里也要指明socket的路径,否则php网站会无法连接到数据库的。php.ini里默认socket路径是空的,默认是指向/var/lib/mysql,所以也要改为/data/mysql.

复制代码 代码如下:

[mysql]

mysql.default_socket = /home/mysql/mysql.sock

[mysqli]

mysql.default_socket = /home/mysql/mysql.sock

五、启动apache.mysql.

复制代码 代码如下:

service httpd start

service mysqld start

  • 作者:区域拒止
  • 原文链接:https://blog.csdn.net/weixin_42415036/article/details/113135862
    更新时间:2022-06-29 08:45:42