页面树结构
转至元数据结尾
转至元数据起始

1、升级前准备以及注意事项

升级前准备和注意事项:
1、了解项目情况、项目环境,升级MySQL版本的原因。
2、了解项目上MySQL的版本信息,部署方式、部署路径,MySQL数据库中是否仅有知识库,如果有业务库数据,需要项目自行备份数据。
3、获取新版的MySQL安装包,获取项目环境接服务器的连接方式。
4、MySQL只建议小版本之间升级,比如 5.7.1升级到5.7.x。
5、服务器可能存在多个MySQL服务,需要检查Smartbi使用的是哪个MySQL服务,检查步骤:
     ①登陆smartbi config配置页面,检查MySQL的地址和端口
     ②登陆服务器查看MySQL端口对应的进程,确认MySQL的信息。

注意事项

此文档仅供参考,相关信息请根据实际环境调整,请勿将文档中的命令直接复制到环境中运行。

2、环境信息

软件

原版本

新版本

OS

部署方式

MySQL

5.7.30

5.7.33

Censtos7.5

RPM包部署

MySQL

5.7.25

5.7.33

Censtos7.5

二级制安装包

MySQL

5.7.25

5.7.33

Censtos7.5

Linux一键部署安装包


注意事项

1、根据实际环境的MySQL部署方式下载对应的升级版本安装包
2、MySQL版本升级前最重要的一件事:备份
3、MySQL升级期间请停止Smartbi服务,避免出现异常

3、安装介质

MySQL下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

4、版本升级

4.1、RPM包部署方式升级

RPM包方式部署MySQL时,可以通过新版本的RPM包升级版本。

1、查看现有的MySQL版本相关信息

RPM包的方式部署时,可以通过以下命令查看MySQL相关信息;

rpm -qa | grep mysql


命令中的查询结果包含了MySQL的版本信息以及部署的MySQL服务,升级时需要将部署的MySQL相关服务都进行版本升级。

2、查看MySQL配置文件,确认MySQL数据目录存放位置

cat /etc/my.cnf

找到以下配置(datadir);
datadir=/var/lib/mysql
#datadir:表示mysql的数据目录路径

注意事项

一般MySQL配置文件默认是存放在/etc/my.cnf,如果指定了其他路径,可以通过ps -ef | grep mysql 查看MySQL进程信息,确认my.cnf的位置。

如果服务器上部署了多个MySQL版本,需要确认我们升级的MySQL的安装路径及数据目录文件路径。

一般可以通过知识库的端口号和MySQL进程来确认MySQL的安装路径。

3、使用mysqldump备份知识库

文档环境中的MySQL知识库名称为smartbidb,参考以下命令备份知识库。

mysqldump -uroot -p --databases smartbidb mysql > /data/smartbi/`date +%F%H`-smartbidb.sql

#参数详解:
-u:MySQ数据库登陆账号
-p:MySQL用户密码
--databases:导出数据库名称。参数后面所有名字参量都被看作数据库名,此处备份知识库smartbidb和mysql库(保存有MySQL账号密码相关信息)


输入MySQL root用户密码后,等待数据库备份完成,备份完成后,在/data/smartbi/目录下会有一个以当前日期命名的sql文件:

如果MySQL数据库除了知识库外,还包含其他数据库,则需要将其他数据库也进行备份。需要注意的是,数据库越大,mysqldump备份时间越长,需要注意磁盘空间是否充足。

4、备份MySQL数据目录、MySQL配置文件


通过查看MySQL配置文件my.cnf,确定MySQL数据目录存放路径后,可以开始备份数据目录。
①停止MySQL服务:

systemctl stop mysqld

②备份MySQL数据目录,并将备份文件移动到/data/smartbi目录(注意磁盘空间是否充足):

cd /var/lib/mysql
tar -zcvf mysql-data-back.tar.gz mysql
mv /var/lib/mysql-data-back.tar.gz /data/smartbi

③备份MySQL配置文件:

cp /etc/my.cnf /data/smartbi/my.cnf_20210416

 5、升级MySQL版本

通过命令查看服务器中部署了哪些MySQL服务,并且确认数据库和数据库目录备份完成后,可以开始升级MySQL版本。

cd /data/smartbi/mysql_new
rpm -Uvh mysql-community-common-5.7.33-1.el7.x86_64.rpm \
mysql-community-libs-5.7.33-1.el7.x86_64.rpm \
mysql-community-client-5.7.33-1.el7.x86_64.rpm \
mysql-community-server-5.7.33-1.el7.x86_64.rpm

命令执行过程如下图:

没有错误信息,则表示升级成功。

6、重启MySQL服务,检查MySQL版本

升级完成后,重启MySQL服务:

systemctl start mysqld

检查MySQL运行状态:

systemctl status mysqld


登陆MySQL,查看MySQL版本信息:

mysql -uroot -p


查看数据库:

mysql> show databases;


也可以通过执行以下命令查看MySQL版本

mysql -V


MySQL版本升级完成。

7、登陆Smartbi验证

重启smartbi,然后检查smartbi是否可以正常访问,检查smarbi中的资源是否正常。

4.2、二进制安装包部署方式升级

二进制包方式部署MySQL时,可以通过新版本的二进制包升级版本。

注意事项

文档中的二进制安装包路径为/data/mysql-5.7.25-linux-glibc2.12-x86_64/,MySQL的数据目录在/data/mysql-5.7.25-linux-glibc2.12-x86_64/data,请根据部署环境替换成实际的路径。

 1、查看现有的MySQL版本相关信息

执行以下命令查看MySQL版本

/data/mysql-5.7.25-linux-glibc2.12-x86_64/bin/mysql -V

2、查看mysql配置文件,确认MySQL数据目录存放位置

cat /etc/my.cnf

找到以下配置(datadir);
datadir=/data/mysql-5.7.25-linux-glibc2.12-x86_64/data
#datadir:表示mysql的数据目录路径

注意事项

一般mysql配置文件默认是存放在/etc/my.cnf,如果指定了其他路径,可以通过ps -ef | grep mysql 查看mysql进程信息,确认my.cnf的位置。
如果服务器上部署了多个MySQL版本,需要确认我们升级的MySQL的安装路径及数据目录文件路径。一般可以通过知识库的端口号和MySQL进程来确认MySQL的安装路径。

3、使用mysqldump备份知识库

文档环境中的MySQL知识库名称为smartbidb,参考以下命令备份知识库。

mysqldump -uroot -p --databases smartbidb mysql > /data/`date +%F%H`-smartbidb.sql

#参数详解:
-u:MySQL数据库登陆账号
-p:MySQL用户密码
--databases:导出数据库名称。参数后面所有名字参量都被看作数据库名,此处备份知识库smartbidb和mysql库(保存有MySQL账号密码相关信息)

注意事项

mysqldump命令如果提示不存在时,请使用绝对路径,例如(/data/mysql-5.7.25-linux-glibc2.12-x86_64/bin/mysqldump )

输入MySQL root用户密码后,等待数据库备份完成,备份完成后,在/data/目录下会有一个以当前日期命名的sql文件:

如果MySQL数据库除了知识库外,还包含其他数据库,则需要将其他数据库也进行备份。需要注意的是,数据库越大,mysqldump备份时间越长,需要注意磁盘空间是否充足。

4、备份MySQL数据目录、MySQL配置文件

通过查看MySQL配置文件my.cnf,确定MySQL数据目录存放路径后,可以开始备份数据目录。
①停止MySQL服务:

systemctl stop mysqld

②备份MySQL数据目录,并将备份文件移动到/data目录:

cd /data/mysql-5.7.25-linux-glibc2.12-x86_64/
tar -zcvf mysql-data-back.tar.gz data
mv mysql-data-back.tar.gz /data

注意事项

数据库越大,MySQL备份时间越长,注意磁盘空间是否充足

③备份MySQL配置文件:

cp /etc/my.cnf /data/my.cnf_20210418

 5、升级MySQL版本

MySQL备份完成后,可以开始安装新版本的MySQL。

①新版本二进制MySQL解压

cd /data
tar -zxvf mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz

②复制备份的旧mysql data目录到新的mysql部署目录下,并解压

cd /data/mysql-5.7.33-linux-glibc2.12-x86_64/
mv /data/mysql-data-back.tar.gz ./
tar -zxvf mysql-data-back.tar.gz



 ③修改mysql配置文件
修改/etc/my.cnf中的相关路径,将旧版本的mysql路径替换成新版本的mysql路径。
修改完成后如下图(仅供参考,具体请路径请替换成实际路径):

修改完成后,保存。

6、重启MySQL服务,检查MySQL版本

以下启动命令仅供参考,以实际环境为准

/etc/init.d/mysqld start


检查MySQL运行状态:

/etc/init.d/mysqld status


登陆MySQL,查看MySQL版本信息:

/data/mysql-5.7.33-linux-glibc2.12-x86_64/bin/mysql -uroot -p


查看数据库:

mysql> show databases;


也可以通过执行以下命令查看mysql版本

/data/mysql-5.7.33-linux-glibc2.12-x86_64/bin/mysql -V



 7、登陆Smartbi验证

重启smartbi,然后检查smartbi是否可以正常访问,检查smarbi中的资源是否正常。

4.3、替换文件的方式升级(对于一键安装部署包)

示例场景:

一键安装部署路径:/data/Smartbi/Smartbi_CentOS_x86_CN

1、查看现有的MySQL版本相关信息

执行以下命令查看MySQL版本:

1

/data/mysql-5.7.25-linux-glibc2.12-x86_64/bin/mysql -V

2、查看mysql配置文件,确认MySQL数据目录存放位置

1

cat /etc/my.cnf

找到以下配置(datadir);
datadir=/data/mysql-5.7.25-linux-glibc2.12-x86_64/data
#datadir:表示mysql的数据目录路径

注意事项
一般mysql配置文件默认是存放在/etc/my.cnf,如果指定了其他路径,可以通过ps -ef | grep mysql 查看mysql进程信息,确认my.cnf的位置。
如果服务器上部署了多个MySQL版本,需要确认我们升级的MySQL的安装路径及数据目录文件路径。一般可以通过知识库的端口号和MySQL进程来确认MySQL的安装路径。


3、备份知识库、Mysql数据目录、Mysql配置文件

①通过“系统运维”备份知识库

②停止服务

1

2

3

cd /data/Smartbi/Smartbi_CentOS_x86_CN

source smartbi_env

./stop.sh

③直接将一键安装部署的Mysql的data目录进行压缩打包备份

1

2

cd /data/Smartbi/Smartbi_CentOS_x86_CN/Mysql/

tar -zcvf mysql-data-back.tar.gz data

需要注意的是,数据库越大,压缩打包备份时间越长,需要注意磁盘空间是否充足。

④备份MySQL配置文件:

cp /etc/my.cnf /data/my.cnf_20210418

4、备份旧版本Mysql目录

1

2

cd /data/Smartbi/Smartbi_CentOS_x86_CN/

mv Mysql/ Mysql_bak/

5、解压并重命名新版本的Mysql安装包

1

2

3

4

cd /data/

tar -zxvf mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz -C /data/Smartbi/Smartbi_CentOS_x86_CN/

cd /data/Smartbi/Smartbi_CentOS_x86_CN/

mv mysql-5.7.33-linux-glibc2.12-x86_64 Mysql

6、升级Mysql版本

①复制备份的旧mysql data目录到新的mysql部署目录下,并解压

cd /data/Smartbi/Smartbi_CentOS_x86_CN/Mysql/
tar -zxvf /data/Smartbi/Smartbi_CentOS_x86_CN/Mysql_bak/mysql-data-back.tar.gz -C ./

②将备份的旧mysql中的相关配置文件复制到新的mysql对应目录下

cd /data/Smartbi/Smartbi_CentOS_x86_CN/Mysql/
cp -ra /data/Smartbi/Smartbi_CentOS_x86_CN/Mysql_bak/{my.cnf,mysql,mysqld,mysqld.log} ./
cd /data/Smartbi/Smartbi_CentOS_x86_CN/Mysql/support-files/
mv mysql.server mysql.server_bak
cp -a /data/Smartbi/Smartbi_CentOS_x86_CN/Mysql_bak/support-files/mysql.server ./

③修改mysql配置文件

修改/etc/my.cnf中的相关路径,将旧版本的mysql路径替换成新版本的mysql路径。
修改完成后如下图(仅供参考,具体请路径请替换成实际路径):

修改完成后,保存。

7、重启服务、检查Mysql版本

①启动服务

1

2

3

cd /data/Smartbi/Smartbi_CentOS_x86_CN

source smartbi_env

./start.sh

②登陆MySQL,查看MySQL版本信息:

1

/data/Smartbi/Smartbi_CentOS_x86_CN/Mysql/bin/mysql -uroot -p


查看数据库:

1

mysql> show databases;


也可以通过执行以下命令查看mysql版本

1

/data/Smartbi/Smartbi_CentOS_x86_CN/Mysql/bin/mysql -V

8、登陆Smartbi验证

重启smartbi,然后检查smartbi是否可以正常访问,检查smarbi中的资源是否正常。


  • 无标签