天天看点

记一次数据库服务器磁盘扩容

日期:2011-1-22,今天翻箱底翻到的,原来我写过这么详细的文章,大公司可能用不到,小公司应该用的上。方法有点土,别见笑。

【系统环境】Centos 5.4 X64;mysql InnoDB引擎;raid1。

【扩容原因】

数据库磁盘空间不足(原磁盘容量太小,146G,不是早期规划的不好,而是成本,你懂的),还处于上升趋势,因此需要扩容,并将数据库数据文件进行迁移新磁盘上。

【主要更改】

1、新增加500G HP硬盘2个。

2、对新增磁盘做Raid1。

3、对新增磁盘进行分区并挂载到/data2目录。

4、格式化/data2为xfs文件系统。

5、复制数据库数据文件到/data2/mysql/3306/data。

6、修改数据库配置文件数据库目录及日志目录,并将默认表引擎改为InnoDB。

【测试论证】

通过在本地服务器上测试,数据库目录移动后,数据库能正常启动。不受影响。

【过程记录】

1、利用数据库备份工具,备份数据库数据文件到备份服务器。

2、关闭数据库。注释掉/etc/rc.local文件中mysql随系统自动启动命名行。

  1. #/usr/local/mysql/bin/mysqladmin -uroot -p shutdown
  2. # vi /etc/rc.local
  3. #/usr/local/mysql/bin/mysqld_safe --defaults- file=/data/mysql/3306/my.cnf --basedir=/usr/local/mysql --datadir=/data/mysql/3306/data --user=mysql &

3、开启kudzu服务。

  1. #setup ##勾选kudzu

4、关机。

  1. #init 0

5、装入磁盘。

6、启动系统。

7、根据提示按F8进入Raid阵列,并将新磁盘添加为Raid1。

8、保存并重启。查看阵列是否启动成功。

9、为新磁盘创建分区。

  1. #fdisk /dev/cciss/c0d1

10、安装xfs文件系统。(参考:《xfs文件系统安装》)

12、修改/etc/fstab文件,并重启。

  1. #reboot

13、检查分区是否正常挂载。

  1. #df –Th

14、复制数据库文件到新分区/data2中。

  1. #cd /data
  2. #cp –R /mysql/ /data2

15、修改目录属主为mysql。

  1. #chown –R mysql:mysql /data2/mysql/3306/

16、修改/data2/mysql/3306/目录下数据库配置文件。

  1. #vi /data2/mysql/3306/my.cnf
  2. 改前 :datadir = /data/mysql/3306/data
  3. 改后:datadir = /data2/mysql/3306/data
  4. 改前:log-bin = /data/mysql/3306/binlog
  5. 改后:log-bin = /data2/mysql/3306/binlog

17、启动数据库。

  1. #/usr/local/mysql/bin/mysqld_safe --defaults-file=/data2/mysql/3306/my.cnf --basedir=/usr/local/mysql --datadir=/data2/mysql/3306/data/ --user=mysql &

18、检查数据库启动日志。

19、修改数据库开机启动文件中的数据库文件路径为新路径。

20、关闭数据库。

21、重启系统。

22、检查分区是否正常挂载,数据库是否正常启动。数据库是否可以正常登陆。

23、远程综合测试。

【操作节点日志】

[21:40]开始数据备份。

[22:30]数据备份完成。

[23:30]关闭数据库

[00:50]开始数据库文件拷贝。

[01:14]数据库文件拷贝完成。

[01:35]各项配置完成。

[02:00]各项数据正常,大功搞成。

继续阅读