Linux系统作为服务器的主流操作系统,在项目部署运维方面发挥着重要的作用。数据库作为数据的存储媒介,其安全性与稳定性不容小觑,如果数据库的安装路径下分配大小较小,假以时日,该硬盘分区可能就会爆了,极大影响系统的正常运行。本文以国产化平台为例,分享数据库数据文件的迁移步骤。
第一步 确认数据库当前状态
不同版本的麒麟系统,安装的数据库可能为MySQL或者系统自带的mariadb,千万别搞错了。
- 打开命令行,输入
systemctl status mysql
(或者mariadb) - 如果数据库处于活动(active)状态,执行命令
systemctl stop mysql
(或者mariadb),停止数据库运行
第二步 拷贝数据文件到指定文件夹
- 在指定位置新建文件夹,以
/home/mydata
为例 - 打开命令行,输入
mv /var/lib/mysql /home/mydata
,完成文件移动操作。需要注意的是,一定要确认数据库文件是否在/var/lib/mysql
目录下
第三步 修改配置文件
- 打开命令行,输入
vim /etc/my.cnf
,编辑该文件。 - 修改datadir项为
datadir=/home/mydata/mysql
- 修改socket项为
socket=/home/mydata/mysql.sock
- [client]下添加
default-character-set=utf8
- [mysqld]下添加
character-set-server=utf8
,lower_case_table_names=1
- [mysql]下添加
default-character-set=utf8
- 编辑完成,保存退出
需要注意的是,一定要确认以上修改项是否在 /etc/my.cnf
下
第四步 创建软连接
- 打开命令行,输入
ln -s /home/mydata/mysql /var/lib/mysql
第五步 新目录创建权限
- 打开命令行,输入
chown -R mysql.mysql /home/mydata/mysql
第六步 数据库重启
- 打开命令行,输入
systemctl start mysql
(或者mariadb) - 查看数据库状态,显示为活动状态(active)即可
第七步 数据库开机自启
- 打开命令行,输入
systemctl enable mysql
(或者mariadb)