1. 将mysql的data目录独立分区
1. 创建data分区
```
fdisk /dev/sdb
mkfs.ext4 /dev/sdb1
mkdir -p /mydata/data #创建挂在目录
chown -R mysql:mysql data
mount /dev/sdb1 /mydata/data/ #挂载硬盘
ls -l /dev/disk/by-uuid/ #查看硬盘UUID
vim /etc/fstab #添加开机自动挂在
```
2. 初始化数据目录
```
/usr/bin/mysqld_safe --datadir='/mydata/data'
```
3. 修改mysql配置文件/etc/my.cnf。将datadir和socket的路径改为/mydata/data目录下
```
[mysqld]
#datadir=/var/lib/mysql ------原系统默认路径
datadir=/mydata/data ------现有路径
#socket=/var/lib/mysql/mysql.sock ------原socket路径现
socket=/mydata/data/mysql.sock ------现有路径
```
4. 修改php配置文件(/etc/php.ini)中的socket路径。没错,千万不要忘记了php.ini里也要指明socket的路径,否则php网站会无法连接到数据库的。php.ini里默认socket路径是空的,默认是指向/var/lib/mysql,所以也要改为/mydata/mysql.
```
[mysql]
mysql.default_socket = /mydata/data/mysql.sock
[mysqli]
mysql.default_socket = /mydata/data/mysql.sock
```
6. 重启apache.mysql
7. 修改客户端(否则客户端无法打开)
```
vim /etc/my.cnf.d/client.cnf
[client]
socket = /mydata/data/mysql.sock
```
或者将mysql.sock链接至默认路径中