发布网友 发布时间:2022-04-23 22:09
共2个回答
懂视网 时间:2022-05-02 04:44
2、将/var/lib下的mysql目录mv(移动)到data目录。为什么要用mv命令,而不用cp命令呢?应为linux文件系统特殊性,mv命令能保留文件的所有属性和权限,尤其是selinux属性。如果用cp命令,就需要回头再去设置mysql文件夹的selinux属性,本人因很头疼selinux故能避则避。
mv /var/lib/mysql /data/mysql
3、修改mysql配置文件/etc/my.cnf。将datadir和socket的路径改为/data目录下。
[mysqld]
#datadir=/var/lib/mysql ------原系统默认路径
datadir=/data/mysql ------现有路径
#socket=/var/lib/mysql/mysql.sock ------原socket路径现
socket=/data/mysql/mysql.sock ------现有路径
[mysqld_safe]
socket=/data/mysql/mysql.sock -----现有路径
[client]
socket=/data/mysql/mysql.sock -----现有路径
[mysql.server]
socket=/data/mysql/mysql.sock -----现有路径
4、修改php配置文件(/etc/php.ini)中的socket路径。没错,千万不要忘记了php.ini里也要指明socket的路径,否则php网站会无法连接到数据库的。php.ini里默认socket路径是空的,默认是指向/var/lib/mysql,所以也要改为/data/mysql.
[mysql]
mysql.default_socket = /data/mysql/mysql.sock
[mysqli]
mysql.default_socket = /data/mysql/mysql.sock
5、重启apache.mysql.
大功告成!!!
CentOS下mysql数据库data目录迁移
标签:网站程序 lamp lamp架构 shell dir default service linux 默认
热心网友 时间:2022-05-02 01:52
假如要把目录移到/home/data下需要进行下面几步:
1、home目录下建立data目录
cd /home
mkdir data
2、把MySQL服务进程停掉:
mysqladmin -u root -p shutdown
3、把/var/lib/mysql整个目录移到/home/data
mv /var/lib/mysql /home/data/
这样就把MySQL的数据文件移动到了/home/data/mysql下
4、找到my.cnf配置文件
如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中。命令如下:
[root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
5、编辑MySQL的配置文件/etc/my.cnf
为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。修改socket=/var/lib/mysql/mysql.sock一行中等号右边的值为:/home/mysql/mysql.sock 。操作如下:
vi my.cnf (用vi工具编辑my.cnf文件,找到下列数据修改之)
# The MySQL server
[mysqld]
port = 3306
#socket = /var/lib/mysql/mysql.sock(原内容,为了更稳妥用“#”注释此行)
socket = /home/data/mysql/mysql.sock (加上此行)
6、修改MySQL启动脚本/etc/init.d/mysql
最后,需要修改MySQL启动脚本/etc/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等号右边的路径改成你现在的实际存放路径:home/data/mysql。
[root@test1 etc]# vi /etc/init.d/mysql
#datadir=/var/lib/mysql (注释此行)
datadir=/home/data/mysql (加上此行)
7、重新启动MySQL服务
/etc/init.d/mysql start
或用reboot命令重启Linux
如果工作正常移动就成功了,否则对照前面的7步再检查一下。还要注意目录的属主和权限。