本版FAQ中有此问题详细解答http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=3614

解决方案 »

  1.   

    to mathematician(数学家):我是在RedHat Linux 9下,和在Windows下不完全一样,但比较我的方案和您提供的FAQ,我的方案也应该是可行的,您看呢?
      

  2.   

    一个疑问是,Apache的httpd.conf文件和PHP的php.ini文件是否有需要修改的地方呢?
      

  3.   

    行不行试试就知道了,呵呵!另外,httpd.conf和php.ini不需修改
      

  4.   

    在目前(MySQL用RPM包缺省安装)的my.cnf中,[mysql.server]部分的basedir=/var/lib,但我运行mysqladmin variables,却显示basedir的值是/usr/。这是怎么回事呢?
      

  5.   

    决定这样做:
    ---------------
    1  kill -9 mysqld_pid
       service mysqld stop
    2  cp /var/lib/mysql /data
    3  cp /etc/my.cnf /etc/my.cnfold
    4  vi /etc/my.cnf
       [mysqld]
       datadir=/data/mysql
       socket=/data/mysql/mysql.sock
       [mysql.server]
       user=mysql
       basedir=/data
       ...
    5  service mysqld start  
    6  rm -f /etc/my.cnfold
       rm -rf /var/lib/mysql   // 若成功,执行这样两命令
      

  6.   

    执行完以下命令:
    -------------
    1  kill -9 mysqld_pid
       service mysqld stop
    2  cp -r /var/lib/mysql /data
    3  cp /etc/my.cnf /etc/my.cnfold
    4  vi /etc/my.cnf
       [mysqld]
       datadir=/data/mysql
       socket=/data/mysql/mysql.sock
       [mysql.server]
       user=mysql
       basedir=/data
       ...
    5  service mysqld start
    -------------------
    运行 mysqladmin version 后出现以下错误提示:
    mysqladmin: connect to server at 'localhost' failed
    error: 'can't connect to local MySQL server throught socket '/var/lib/mysql/mysql.sock' (2)'
    Chech that mysqld is running and that the socket: '/var/lib/mysql/mysql.sock' exists!还有,我reboot系统时,stop MySQL 是 failed 的
      

  7.   

    搞定,完整过程如下:
    -------------
    1  ps -aux | grep mysqld
       kill -9 mysqld_pid
       service mysqld stop
    2  cp -airx /var/lib/mysql /data   // 注意不是/data/mysql
    3  cp /etc/my.cnf /etc/my.cnfoldyymmdd
    4  vi /etc/my.cnf
       [mysqld]
       datadir=/data/mysql
       socket=/data/mysql/mysql.sock
       [mysql.server]
       user=mysql
       basedir=/data
       ...
       [client]   //此节为自己添加,非必须
       # password=
       port=3306
       socket=/data/mysql/mysql.sock
       # Here follows entries for some specific programs
    5  vi /etc/rc.d/init.d/mysqld
       datadir=/data/mysql
    6  service mysqld start  
    7  mysqladmin version   // 测试
    8  rm -f /etc/my.cnfold
       rm -rf /var/lib/mysql   // 若成功,执行这样两命令