Linux|系统管理|WEB开发

关注Linux,系统管理,WEB开发以及开源世界

LAMP缺省环境下,修改mysql的数据存储位置

| Comments

大部分Linux发行版本自带的MySQL数据库,数据存储路径在/var/lib/mysql下,如果该系统充当Web服务器,这个位置似乎不太恰当,通过下面的几个步骤,可以将数据库迁移到别的位置。

  1. 创建你想存储的目录

    mkdir -p /web/db 
    chown root.root /web 
    chmod 755 /web 
    chown    mysql.mysql /web/db
    
  1. 如果已经有数据了,拷贝/var/lib/mysql/下的所有文件到新位置,注意,不要mysql这个目录了 cp -a /var/lib/mysql/* /web/db/

  2. 修改mysql的配置文件/etc/my.cnf(或别的位置),在[client]区段里,加入 socket = /web/db/mysql.sock 在[mysqld]区段里,加入

    socket = /web/db/mysql.sock   
    datadir = /web/db
    
  3. 修改php的配置文件/etc/php.ini(或别的位置),增加或者修改下面两行

    mysql.default_socket = /web/db/mysql.sock 
    mysqli.default_socket = /web/db/mysql.sock
    

    上面两行应该分属于[mysql]和[mysqli]区段,别写在一起了。

  4. 重启MySQL,看看启动是否成功,如果失败,根据错误日志进行修改,大部分情况下,可能是权限问题,可以参考这篇文档

  5. 重启Apache,测试php连接数据库是否成功,主要是看是否会报关于mysql.sock的错误

Comments