【转载】linux下迁移mysql数据库存放目录(硬链接和软链接)

linux下迁移mysql数据库存放目录mysql

www.111cn.net 编辑:tiger 来源:转载
在linux系统中更换或移动mysql数据库存储目录有两种办法,一种是修改改/etc/my.cnf,另外一种是软链接方法,下面咱们分别一看一下。
方法一:
参照windows下的方法,把/var/lib/mysql移到须要的目录,再修改/etc/my.cnf文件,指定数据目录。这方面的教程网上不少,你们能够去搜索一下。
停掉Mysql服务
在my.ini的[mysqld]里有三个设置,路径改为移动以后的路径
代码以下 复制代码
basedir=”D:/MySQL-5.0.15b/”
datadir=”D:/MySQL-5.0.15b/data”
innodb_data_home_dir=”D:/MySQL-5.0.15b/data”
从新启动Mysql服务就行了。
这里分别对应的就是刚刚移动的那些文件夹里面对应的文件夹和文件
basedir,会影响bin目录,影响服务;
datadir,影响数据库存放路径;
其中basedir在迁移时必定要设置,不然基本会致使服务不能启动,ibdata1通常会在data文件夹的上一层。
另 外innodb的数据文件ibdata1若是没有放在默认位置,那么必定要设置,不然的话服务第一次能够启动,并且会在应该存放ibdata1的路径下新 建一个初始的ibdata1文件,看起来正常,但全部使用innodb存储引擎的数据库的数据都会丢失,并且再次重启时,有可能会没法启动,或者各类始料 不及的错误。linux

方法二:
使用linux下的软链接方法,具体操做以下:(以迁移到/home/mysql/目录为例)
先中止mysql:
代码以下 复制代码
/etc/init.d/mysqld stop
移动数据:
mv /var/lib/mysql/* /home/mysql/
建立软链接:
ln -s /home/mysql/ /var/lib/mysql/
启动mysql:
/etc/init.d/mysqld startsql

移动数据:
mv /var/lib/mysql /home/mysql
建立软链接:
ln -s /home/mysql /var/lib/mysql
这两句命令的意思是: 将 /var/lib/ 目录下的 mysql 整个移动到 /home/ 目录,并保留原始目录属性
在 /var/lib/ 目录下建立个连接到 /home/mysql/ 目录的软链接 mysql 目录.
总结
在网上有不少朋友说了使用
移动数据:
mv /var/lib/mysql/* /home/mysql/
建立软链接:
ln -s /home/mysql/ /var/lib/mysql/
你们须要注意再注意啊,这个种方法不是不可行是不安全。数据库

相关文章
相关标签/搜索