MeterSphere使用外置数据库,如何迁移数据目录

背景:安装 MeterSphere时采用外置数据库,数据库使用 rpm 安装的,数据库的data目录默认是在/var/lib下,由于默认mysql装的分区盘空间很小,需要修改对应存储数据文件路径,出于数据安全性的考虑把它挪到 /opt/mysql下,迁移安装目录时,踩了一些坑,给大家分享下:
版本:
	MeterSphere:V2.5.1
	外置数据库Mysql
步骤:
1. 执行msctl stop 停止应用

在这里插入图片描述

2. 查看mysql数据存放目录

mysql -uroot -p #进入数据库
show variables like ‘%dir%’; #查看sql存储路径
查看datadir 那一行所指的路径
在这里插入图片描述

3. 备份mysql数据,停止mysql服务
mysqldump -uroot -pPassword123@mysql metersphere > metersphere.sql
4. 创建新的数据库存放目录

在root权限下,创建新的数据目录文件:

mkdir /opt/mysql

这里是从/var/lib/mysql–>/opt/mysql,因为opt下磁盘空间比较大,足够满足空间上的需要。

5.移动数据库目录文件到新的存放目录

mv /var/lib/mysql/* /opt/mysql

6.修改Mysql配置文件

修改/etc/my.cnf, 将datadir和socket地址改为新目录地址

[mysqld]
datadir=/opt/mysql
socket=/opt/mysql/mysql.sock
default-storage-engine=INNODB
character_set_server=utf8mb4
lower_case_table_names=1
table_open_cache=128
max_connections=2000
max_connect_errors=6000
innodb_file_per_table=1
innodb_buffer_pool_size=1G
max_allowed_packet=64M
transaction_isolation=READ-COMMITTED
innodb_lock_wait_timeout=1800

server-id=1
log-bin=mysql-bin
#expire_logs_days = 2
binlog_format=mixed

#需要复制的数据库名,如果复制多个数据库,重复设置这个选项即可                
binlog-do-db = metersphere       
#将从服务器从主服务器收到的更新记入到从服务器自己的二进制日志文件中              
log-slave-updates                      
#控制binlog的写入频率。每执行多少次事务写入一次(这个参数性能消耗很大,但可减小MySQL崩溃造成的损失)
sync_binlog = 1                  
#这个参数一般用在主主同步中,用来错开自增值, 防止键值冲突
auto_increment_offset = 1         
#这个参数一般用在主主同步中,用来错开自增值, 防止键值冲突
auto_increment_increment = 1          
#二进制日志自动删除的天数,默认值为0,表示“没有自动删除”,启动时和二进制日志循环时可能删除
expire_logs_days = 7                          
#将函数复制到slave
log_bin_trust_function_creators = 1



character-set-client-handshake = FALSE
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
init_connect='SET default_collation_for_utf8mb4=utf8mb4_general_ci'

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

skip-name-resolve

[mysql]
default-character-set=utf8mb4
socket=/opt/mysql/mysql.sock

[mysql.server]
default-character-set=utf8mb4

[client]
default-character-set=utf8mb4
socket=/opt/mysql/mysql.sock
7.重启数据库
 systemctl restart mysqld
8.进入数据库,查看mysql数据存放目录

mysql -uroot -p #进入数据库
show variables like ‘%dir%’; #查看sql存储路径
查看datadir 那一行所指的路径
在这里插入图片描述

9.启动 MeterSphere

msctl reload

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值