Ubuntu下更改MySQL数据库文件的目录

公司的Ubuntu服 务器对于各个系统的目录是放在不一样的逻辑分区上的,好比存放mysql数据库文件的默认目录/var/lib/mysql所在的系统目录/var/单独在 一个分区上,可是这个分区的大小是固定的,不足以存放整个数据库文件。可是另外一个系统目录/data大小却达到T级,大大知足了需求,所以有了更改数据库 文件目录的需求。如下是我参考网络上一些文章进行尝试的过程:

1.中止数据库服务:mysql

使用/etc/init.d/mysql stop 或者 stop mysqllinux

2. 在目标位置(/data)建立数据库文件的目录(如/mysqldb),并复制(若是再也不使用默认的位置,则能够直接mv原先数据库文件到新目录下)原先的数据库文件目录到该目录下:sql

cd  /data数据库

mkdir mysqldbvim

cp -r /var/lib/mysql  /data/mysqldb/服务器

通过一段时间的等待后,在/data/mysqldb/下面就有了原先默认的mysql数据库文件目录的拷贝“/mysql”网络

3.修改my.cnf文件app

# vim /etc/mysql/my.cnfsocket

将datadir = /var/lib/mysql 改成 datadir = /data/mysqldb/mysqlspa

另外因为当前my.cnf 中的socket = /var/run/mysqld/mysqld.sock(而并不是像网上所说的sock = /var/lib/mysql/mysql.sock),即socket的位置并不在数据库文件所在的位置,所以能够不作相似网上其余网页所说的,要使用 如下的命令作一个mysql.sock 连接:

ln -s  /data/mysqldb/mysql/mysql.sock   /var/lib/mysql/mysql.sock (须要从/home/data/mysql下复制一份过来)

4. 修改数据库的权限:

# chown -R mysql:mysql /data/mysqldb/mysql/   ← 改变数据库文件目录的归属为mysql

# chmod 700 /data/mysqldb/mysql/whois/  ← 改变数据库目录whois的属性为700

# chmod 660 /data/mysqldb/mysql/whois/*  ← 改变数据库中数据表的属性为660

5. 修改文件usr.sbin.mysqld

# vim /etc/apparmor.d/usr.sbin.mysqld

/var/lib/mysql r,

/var/lib/mysql/** rwk,

改为

/data/mysqldb/mysql/  r,

/data/mysqldb/mysql/** rwk,

注意:没有该步骤的话,将致使数据库服务没法重启,好像在重启,可是一直卡住无反应。

6.启动mysql服务器

/etc/init.d/apparmor restart

/etc/init.d/mysql restart  (或者使用 restart mysql)

搞定!

linux

相关文章
相关标签/搜索