Linux下修改MySQL數據庫數據文件路徑


使用rpm安裝方式安裝完MySQL數據庫后,數據文件的默認路徑為/var/lib/mysql,然而根目錄並不適合用於存儲數據文件。

原路徑:/var/lib/mysql
目標路徑:/home/mysql_data/mysql
Linux系統版本:centos7.6
MySQL數據庫版本:5.7.25

步驟:
1、創建目標路徑
mkdir -p /home/mysql_data
2、關閉MySQL
systemctl stop mysqld
3、復制數據文件
cp -arp /var/lib/mysql /home/mysql_data
4、修改配置文件/etc/my.cnf
將datadir和socket中的原路徑修改為目標路徑
datadir=/home/mysql_data/mysql
socket=/home/mysql_data/mysql/mysql.sock
5、啟動MySQL服務
systemctl start mysqld

NOTE:
1、報錯如下:

2019-12-22T08:32:42.430564Z 0 [ERROR] InnoDB: Operating system error number 13 in a file operation.
2019-12-22T08:32:42.430599Z 0 [ERROR] InnoDB: The error means mysqld does not have the access rights to the directory.
2019-12-22T08:32:42.430616Z 0 [Note] InnoDB: Creating shared tablespace for temporary tables
2019-12-22T08:32:42.430898Z 0 [ERROR] InnoDB: The innodb_temporary data file 'ibtmp1' must be writable
2019-12-22T08:32:42.430923Z 0 [ERROR] InnoDB: The innodb_temporary data file 'ibtmp1' must be writable
2019-12-22T08:32:42.430936Z 0 [ERROR] InnoDB: Could not create the shared innodb_temporary.
2019-12-22T08:32:42.430952Z 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error
2019-12-22T08:32:43.038973Z 0 [ERROR] InnoDB: Operating system error number 13 in a file operation.
2019-12-22T08:32:43.039021Z 0 [ERROR] InnoDB: The error means mysqld does not have the access rights to the directory.
2019-12-22T08:32:43.039037Z 0 [ERROR] Plugin 'InnoDB' init function returned error.
2019-12-22T08:32:43.039046Z 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2019-12-22T08:32:43.039056Z 0 [ERROR] Failed to initialize builtin plugins.
2019-12-22T08:32:43.039063Z 0 [ERROR] Aborting

解決:
執行命令:
setenforce 1
再重新啟動

2、報錯如下:
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'
解決:
修改配置文件my.cnf,添加或修改如下配置:

[client]
socket = /home/mysql_data/mysql/mysql.sock


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM