...
升级前准备和注意事项:
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升级
...
注意 | ||
---|---|---|
| ||
此文档仅供参考,相关信息请根据实际环境调整,请勿将文档中的命令直接复制到环境中运行。 |
2、环境信息
IP地址
软件 | 原版本 | 新版本 | OS | 部署方式 |
MySQL | 5.7.30 | 5.7.33 | Censtos7.5 | RPM包部署 |
MySQL | 5.7.25 | 5.7.33 | Censtos7.5 | 二级制安装包 |
注意 | ||
---|---|---|
| ||
1、根据实际环境的MySQL部署方式下载对应的升级版本安装包 |
3、安装介质
安装介质已上传到节点的对应位置:
192.168.137.5节点(RPM包)
MySQL: /data/smartbi/mysql_new/
...
4、版本升级
4.1、RPM包部署方式升级
RPM包方式部署MySQL时,可以通过新版本的RPM包升级版本。
...
代码块 | ||||
---|---|---|---|---|
| ||||
rpm -qa | grep mysql
|
命令中的查询结果包含了MySQL的版本信息以及部署的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的安装路径。 |
...
代码块 | ||||
---|---|---|---|---|
| ||||
mysqldump -uroot -p --databases smartbidb mysql > /data/smartbi/`date +%F%H`-smartbidb.sql
|
#参数详解:
-u:MySQ数据库登陆账号
-p:MySQL用户密码
--databases:导出数据库名称。参数后面所有名字参量都被看作数据库名,此处备份知识库smartbidb和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
|
...
代码块 | ||||
---|---|---|---|---|
| ||||
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
|
命令执行过程如下图:
没有错误信息,则表示升级成功。
...
代码块 | ||||
---|---|---|---|---|
| ||||
systemctl start mysqld
|
...
代码块 | ||||
---|---|---|---|---|
| ||||
systemctl status mysqld
|
...
代码块 | ||||
---|---|---|---|---|
| ||||
mysql -uroot -p
|
查看数据库:
代码块 | ||||
---|---|---|---|---|
| ||||
mysql> show databases;
|
也可以通过执行以下命令查看MySQL版本
代码块 | ||||
---|---|---|---|---|
| ||||
mysql -V
|
MySQL版本升级完成。
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
...
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的安装路径。 |
...
代码块 | ||||
---|---|---|---|---|
| ||||
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 ) |
...
...
代码块 | ||||
---|---|---|---|---|
| ||||
systemctl stop mysqld
|
②备份MySQL数据目录,并将备份文件移动到/data目录:
...
language | bash |
---|---|
linenumbers | true |
...
5.7.25 |
...
注意 | ||
---|---|---|
| ||
数据库越大,MySQL备份时间越长,注意磁盘空间是否充足 |
③备份MySQL配置文件:
代码块 | ||||
---|---|---|---|---|
| ||||
cp /etc/my.cnf /data/my.cnf_20210418
|
...
...
5.7.33 |
...
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,查看是否正常访问,并检查smarbi中的相关资源是否正常。
MySQL版本升级完成。
5、登陆Smartbi验证
MySQL升级完成后,重新启动smartbi,测试访问smartbi是否正常。
验证无异常则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部署目录下,并解压
代码块 | ||||
---|---|---|---|---|
| ||||
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
|
...
代码块 | ||||
---|---|---|---|---|
| ||||
/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
|
...
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配置文件:
代码块 | ||||
---|---|---|---|---|
| ||||
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一键部署安装包 |
注意 | ||
---|---|---|
| ||
1、根据实际环境的MySQL部署方式下载对应的升级版本安装包 |
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相关信息;
...
注意 | ||
---|---|---|
| ||
一般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服务:
...
代码块 | ||||
---|---|---|---|---|
| ||||
cp /etc/my.cnf /data/smartbi/my.cnf_20210416 |
5、升级MySQL版本
通过命令查看服务器中部署了哪些MySQL服务,并且确认数据库和数据库目录备份完成后,可以开始升级MySQL版本。
...
命令执行过程如下图:
没有错误信息,则表示升级成功。
6、重启MySQL服务,检查MySQL版本
升级完成后,重启MySQL服务:
代码块 | ||||
---|---|---|---|---|
| ||||
systemctl start mysqld |
...
代码块 | ||||
---|---|---|---|---|
| ||||
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版本:执行以下命令查看MySQL版本
代码块 | ||||
---|---|---|---|---|
| ||||
/data/mysql-5.7.25-linux-glibc2.12-x86_64/bin/mysql -V |
2、查看mysql配置文件,确认MySQL数据目录存放位置
代码块 | ||||
---|---|---|---|---|
| ||||
cat /etc/my.cnf |
...
注意 | ||
---|---|---|
| ||
一般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服务:
...
代码块 | ||||
---|---|---|---|---|
| ||||
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 |
...
代码块 | ||||
---|---|---|---|---|
| ||||
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版本
#以下启动命令仅供参考,以实际环境为准以下启动命令仅供参考,以实际环境为准
代码块 | ||||
---|---|---|---|---|
| ||||
/etc/init.d/mysqld start |
...
代码块 | ||||
---|---|---|---|---|
| ||||
/data/mysql-5.7.33-linux-glibc2.12-x86_64/bin/mysql -V |
...
7、登陆Smartbi验证
7、登陆Smartbi验证重启smartbi,然后检查smartbi是否可以正常访问,检查smarbi中的资源是否正常。浏览器访问smartbi,查看是否正常访问,并检查smarbi中的相关资源是否正常。
MySQL版本升级完成。
4.
...
3、替换文件的方式升级(对于一键安装部署包)
示例场景:
一键安装部署路径:/data/Smartbi/Smartbi_CentOS_x86_CN
1、查看现有的MySQL版本相关信息
执行以下命令查看MySQL版本:
1 |
|
2、查看mysql配置文件,确认MySQL数据目录存放位置
1 |
|
找到以下配置(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 |
./stop.sh |
...
代码块 | ||||
---|---|---|---|---|
| ||||
cp /etc/my.cnf /data/my.cnf_20210418 |
4、备份旧版本Mysql目录
1 2 |
|
5、解压并重命名新版本的Mysql安装包
1 2 3 4 |
|
6、升级Mysql版本
①复制备份的旧mysql data目录到新的mysql部署目录下,并解压
...
修改/etc/my.cnf中的相关路径,将旧版本的mysql路径替换成新版本的mysql路径。
修改完成后如下图(仅供参考,具体请路径请替换成实际路径):
修改完成后,保存。
7、重启服务、检查Mysql版本
①启动服务
1 2 3 |
./start.sh |
...
1 |
|
8、登陆Smartbi验证
...
5、登陆Smartbi验证
MySQL升级完成后,重新启动smartbi,测试访问smartbi是否正常。
验证无异常则mysql版本升级完成
...
重启smartbi,然后检查smartbi是否可以正常访问,检查smarbi中的资源是否正常。