mysql默認安裝的情況下,相應(yīng)的文件都安裝在默認的目錄下,要想把安裝好的mysql遷移到其他目錄,只需要配置好my.cnf文件,然后將原有的文件(數(shù)據(jù)文件,binlog文件,redolog文件等),遷移到配置文件指定的目錄即可,如下是整個遷移的過程.
1.查看當前的my.cnf文件
mysql@node2 ~]$ more /etc/my.cnf
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[mysqld]
character_set_server=utf8
datadir=/var/lib/mysqldata
max_heap_table_size=256M
tmp_table_size=256M
ft_min_word_len=2
log-bin=/var/lib/mysqldata/bin_log/mysql-bin
expire_logs_days=15
innodb_data_home_dir=
innodb_data_file_path=/var/lib/mysqldata/ibdata1:140M;/var/lib/mysqldata/ibdata2:2G;/home/mysql/ibdata/ibdata3:100M:autoextend
2.創(chuàng)建重新部署后設(shè)定的路徑
datadir=/home/mysql_app/dbdata
socket=/home/mysql_app/dbdata/mysql.sock
innodb_data_home_dir=/home/mysql_app/pro_data
innodb_data_file_path=ibdata1:100M;ibdata2:100M;ibdata3:100M;ibdata4:100M:autoextend
innodb_log_group_home_dir=/home/mysql_app/redolog
log_bin=/home/mysql_app/mysqllog/binlog/binlog.bin
slow_query_log_file=/home/mysql_app/mysqllog/logfile/slow-query.log
log-error=/home/mysql_app/mysqllog/logfile/mysql-err.log
relay-log-index=/home/mysql_app/mysqllog/relay-log/slave-relay-bin.index
relay-log=/home/mysql_app/mysqllog/relay-log/relay-log
相應(yīng)的創(chuàng)建如上的目錄:
datadir=/db/mysql/dbdata
socket=/db/mysql/dbdata/mysql.sock
innodb_data_home_dir=/db/mysql/innodb/data
innodb_log_group_home_dir=/db/mysql/innodb/redolog
log_bin=/db/mysql/mysqllog/binlog/mysql-bin
slow_query_log_file=/db/mysql/mysqllog/logfile/slow-query.log
log-error=/db/mysql/mysqllog/logfile/mysql-err.log
relay-log-index=/db/mysql/mysqllog/relay-log/slave-relay-bin.index
relay-log=/db/mysql/mysqllog/relay-log/relay-log
mkdir -p /db/mysql/dbdata
mkdir -p /db/mysql/innodb/data
mkdir -p /db/mysql/innodb/redolog
mkdir -p /db/mysql/mysqllog/binlog
mkdir -p /db/mysql/mysqllog/logfile
mkdir -p /db/mysql/mysqllog/relay-log/relay-log
3.根據(jù)新部署的目錄修改my.cnf配置文件
根據(jù)新創(chuàng)建的目錄修改配置文件
datadir=/db/mysql/dbdata
socket=/db/mysql/dbdata/mysql.sock
innodb_file_per_table=1
innodb_data_home_dir=/db/mysql/innodb/data
innodb_data_file_path=ibdata1:140M;ibdata2:2G;ibdata3:100M:autoextend
innodb_log_group_home_dir=/db/mysql/innodb/redolog
log_bin=/db/mysql/mysqllog/binlog/mysql-bin
slow_query_log_file=/db/mysql/mysqllog/logfile/slow-query.log
log-error=/db/mysql/mysqllog/logfile/mysql-err.log
relay-log-index=/db/mysql/mysqllog/relay-log/slave-relay-bin.index
relay-log=/db/mysql/mysqllog/relay-log/relay-log
4.將相應(yīng)的數(shù)據(jù)文件拷貝到新創(chuàng)建的目錄
數(shù)據(jù)文件
[mysql@node2 ~]$ cd /var/lib/mysqldata
[mysql@node2 mysqldata]$ cp . -R /db/mysql/dbdata/
binlog日志文件
[mysql@node2 dbdata]$ cd bin_log
[mysql@node2 bin_log]$ mv *.* /db/mysql/mysqllog/binlog/
innodb數(shù)據(jù)文件
mv /db/mysql/dbdata/ibdata1 /db/mysql/innodb/data/
mv /db/mysql/dbdata/ibdata2 /db/mysql/innodb/data/
mv /home/mysql/ibdata/ibdata3 /db/mysql/innodb/data/
redolog日志文件
mv /db/mysql/dbdata/ib_logfile0 /db/mysql/innodb/redolog/
mv /db/mysql/dbdata/ib_logfile1 /db/mysql/innodb/redolog/
5.使用配置好的配置文件啟動數(shù)據(jù)庫
mysqld_safe --defaults-file=/db/mysql/config/my.cnf
整個遷移大功告成!!!
-- The End --