今天在遷移數據庫的時候發現一個問題 linux通過yum安裝后的mysql數據庫存儲在系統盤中,同時也不會做映射方式,就找到一種把數據庫直接放到數據盤的方式
做數據庫目錄遷移需要把mysql服務先停掉
首先需要修改/etc/my.cnf 路徑
修改前
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
修改后
[mysqld]
datadir=/data/mysql
socket=/data/mysql/mysql.sock
[mysqld_safe]
log-error=/logmysql/log/mysqld.log
pid-file=/logmysql/run/mysqld/mysqld.pid
切記一定要在新的文件下創建對應的目錄以及子目錄(新創建的文件目錄需要給定所有權限 chmod 777 /data/mysql)
把/var/lib/mysql下面的數據庫復制到/data/mysql下
然后運行mysql_install_db --user=mysql --datadir=/data/mysql
運行后直接啟動mysql服務
最后補充一下:修改完目錄之后使用mysql -uuser -ppassword 啟動mysql是會報錯
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
我們需要換一種方式連接mysql
mysql -uuser -ppwd -S /data/mysql/mysql.sock
然后就和正常的mysql操作一樣了!