页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

...

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

升级mysql请参考windows exe安装下mysql升级

...

注意
title注意事项

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

2、环境信息

IP地址

软件

原版本

新版本

OS

部署方式

192.168.137.5

MySQL

5.7.30

5.7.33

Censtos7.5

RPM包部署

192.168.137.115

MySQL

5.7.25

5.7.33

Censtos7.5

二级制安装包

注意
title注意事项

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

3、安装介质

安装介质已上传到节点的对应位置:
192.168.137.5节点(RPM包)
MySQL: /data/smartbi/mysql_new/

...

4、版本升级

4.1、RPM包部署方式升级

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

...

代码块
languagebash
linenumberstrue
rpm -qa | grep mysql

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

...

代码块
languagebash
linenumberstrue
cat /etc/my.cnf

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

注意
title注意事项

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

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

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

...

代码块
languagebash
linenumberstrue
mysqldump -uroot -p --databases smartbidb mysql > /data/smartbi/`date +%F%H`-smartbidb.sql

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

...

代码块
languagebash
linenumberstrue
systemctl stop mysqld

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

代码块
languagebash
linenumberstrue
cd /var/lib/mysql
tar -zcvf mysql-data-back.tar.gz mysql
mv /var/lib/mysql-data-back.tar.gz /data/smartbi

③备份MySQL配置文件:

代码块
languagebash
linenumberstrue
cp /etc/my.cnf /data/smartbi/my.cnf_20210416

...

代码块
languagebash
linenumberstrue
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

命令执行过程如下图:
Image Removed
没有错误信息,则表示升级成功。

...

代码块
languagebash
linenumberstrue
systemctl start mysqld

...

代码块
languagebash
linenumberstrue
systemctl status mysqld

Image Removed

...

代码块
languagebash
linenumberstrue
mysql -uroot -p

Image Removed
查看数据库:

代码块
languagebash
linenumberstrue
mysql> show databases;

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

代码块
languagebash
linenumberstrue
mysql -V

Image Removed
MySQL版本升级完成。

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

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

注意
title注意事项
文档中的二进制安装包路径为/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

...

MySQL

...

代码块
languagebash
linenumberstrue
cat /etc/my.cnf

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

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

...

代码块
languagebash
linenumberstrue
mysqldump -uroot -p --databases smartbidb mysql > /data/`date +%F%H`-smartbidb.sql

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

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

...

...

代码块
languagebash
linenumberstrue
systemctl stop mysqld

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

...

languagebash
linenumberstrue

...

5.7.25

...

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

③备份MySQL配置文件:

代码块
languagebash
linenumberstrue
cp /etc/my.cnf /data/my.cnf_20210418

...

...

5.7.33

...

6、升级Mysql版本

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

代码块
languagebash
linenumberstrue
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对应目录下

代码块
languagebash
linenumberstrue
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路径。
修改完成后如下图(仅供参考,具体请路径请替换成实际路径):
Image Removed
修改完成后,保存。

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

Image Removed
查看数据库:

...

1

...

mysql> show databases;

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

...

1

...

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

Image Removed

8、登陆Smartbi验证
浏览器访问smartbi,查看是否正常访问,并检查smarbi中的相关资源是否正常。
MySQL版本升级完成。

5、登陆Smartbi验证

MySQL升级完成后,重新启动smartbi,测试访问smartbi是否正常。
Image Removed
验证无异常则mysql版本升级完成

6、其他说明

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、环境信息

IP地址

软件

原版本

新版本

OS

部署方式

192.168.137.5

MySQL

5.7.30

5.7.33

Censtos7.5

RPM包部署

192.168.137.115

MySQL

5.7.25

5.7.33

Censtos7.5

二级制安装包

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

代码块
languagebash
linenumberstrue
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

...

代码块
languagebash
linenumberstrue
/etc/init.d/mysqld start

Image Removed
检查MySQL运行状态:

代码块
languagebash
linenumberstrue
/etc/init.d/mysqld status

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

代码块
languagebash
linenumberstrue
/data/mysql-5.7.33-linux-glibc2.12-x86_64/bin/mysql -uroot -p

Image Removed
查看数据库:

代码块
languagebash
linenumberstrue
mysql> show databases;

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

代码块
languagebash
linenumberstrue
/data/mysql-5.7.33-linux-glibc2.12-x86_64/bin/mysql -V

...

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

示例场景:

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

1、查看现有的MySQL版本相关信息
执行以下命令查看MySQL版本:

...

1

...

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

...

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的安装路径。

...

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

②停止服务

...

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配置文件:

代码块
languagebash
linenumberstrue
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

Censtos7.5

Linux一键部署安装包


注意
title注意事项

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

3、安装介质

...

192.168.137.5节点(RPM包)
MySQL: /data/smartbi/mysql_new/192.168.137.115节点(二进制包)
MySQL: /data/MySQL下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

4、版本升级

4.1、RPM包部署方式升级

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

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

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

...

注意
title注意事项

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

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

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

3、使用mysqldump备份知识库

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

...


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

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

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


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

...

代码块
languagebash
linenumberstrue
cp /etc/my.cnf /data/smartbi/my.cnf_20210416

 5、升级MySQL版本

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

...

命令执行过程如下图:

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

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

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

代码块
languagebash
linenumberstrue
systemctl start mysqld

...

代码块
languagebash
linenumberstrue
mysql -V


MySQL版本升级完成。

7、登陆Smartbi验证

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

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

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

注意
title注意事项
文档中的二进制安装包路径为/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版本:执行以下命令查看MySQL版本

代码块
languagebash
linenumberstrue
/data/mysql-5.7.25-linux-glibc2.12-x86_64/bin/mysql -V


 

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

代码块
languagebash
linenumberstrue
cat /etc/my.cnf

...

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

3、使用mysqldump备份知识库

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

...

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

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

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

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

...

代码块
languagebash
linenumberstrue
cp /etc/my.cnf /data/my.cnf_20210418

 

...

5、升级MySQL版本

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

①新版本二进制MySQL解压

代码块
languagebash
linenumberstrue
cd /data
tar -zxvf mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz

...

代码块
languagebash
linenumberstrue
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配置文件
③修改mysql配置文件
修改/etc/my.cnf中的相关路径,将旧版本的mysql路径替换成新版本的mysql路径。
修改完成后如下图(仅供参考,具体请路径请替换成实际路径):

修改完成后,保存。

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

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

代码块
languagebash
linenumberstrue
/etc/init.d/mysqld start

...

代码块
languagebash
linenumberstrue
/data/mysql-5.7.33-linux-glibc2.12-x86_64/bin/mysql -V

Image Modified

...


 7、登陆Smartbi验证

7、登陆Smartbi验证重启smartbi,然后检查smartbi是否可以正常访问,检查smarbi中的资源是否正常。浏览器访问smartbi,查看是否正常访问,并检查smarbi中的相关资源是否正常。
MySQL版本升级完成。

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

...

代码块
languagebash
linenumberstrue
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部署目录下,并解压

...

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

修改完成后,保存。

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

①启动服务

1

2

3

cd /data/Smartbi/Smartbi_CentOS_x86_CN

source smartbi_env

./start.sh

...

1

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

8、登陆Smartbi验证

...

5、登陆Smartbi验证

MySQL升级完成后,重新启动smartbi,测试访问smartbi是否正常。
Image Removed
验证无异常则mysql版本升级完成

...

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