• mysql数据库迁移


    由于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

  • 相关阅读:
    linux网络编程 inet_aton(); inet_aton; inet_addr;
    linux网络编程 ntohs, ntohl, htons,htonl inet_aton等详解
    linux C++ scandir 的使用
    linux 多线程编程-读写者问题
    为什么修改头文件make不重新编译
    syslog(),closelog()与openlog()--日志操作函数
    VC:CString用法整理(转载)
    VC6.0实用小技巧
    HTml js 生成图片
    C++中两个类相互包含引用问题
  • 原文地址:https://www.cnblogs.com/baiquan/p/6064168.html
Copyright © 2020-2023  润新知