3.4.0 升级说明
✨ 查看变更内容
单机模式
微服务应用升级到
3.4.0
,参考 微服务升级镜像升级完成后进入微服务应用容器内执行数据库调整脚本,具体步骤如下:
进入容器:
docker exec -it $(docker ps | grep community | awk '{print $1}') bash
连接 MySQL 数据库 :
mysql -h 127.0.0.1 -P 3306 -uroot -p123456
执行以下脚本
USE MDProject;
CREATE TABLE `Project_Organize` (
`AutoID` int(11) NOT NULL AUTO_INCREMENT,
`OrganizeID` char(36) NOT NULL,
`OrganizeTypeID` char(36) DEFAULT NULL,
`OrganizeName` varchar(128) DEFAULT NULL,
`ProjectID` char(36) NOT NULL,
`Remark` text,
`SortIndex` int(11) NOT NULL,
`CreateUser` char(36) DEFAULT NULL,
`LastModifyUser` char(36) DEFAULT NULL,
`CreateTime` datetime DEFAULT NULL,
`UpdateTime` datetime DEFAULT NULL,
PRIMARY KEY (`AutoID`),
KEY `IX_Project_Organize` (`ProjectID`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;CREATE TABLE `Project_OrganizeAccount` (
`AutoId` int(11) NOT NULL AUTO_INCREMENT,
`ProjectId` char(36) NOT NULL,
`OrganizeId` char(36) NOT NULL,
`AccountId` char(36) NOT NULL,
`CreateUser` char(36) DEFAULT NULL,
`CreateTime` datetime NOT NULL,
`UpdateTime` datetime NOT NULL,
`LastModifyUser` char(36) DEFAULT NULL,
PRIMARY KEY (`AutoId`),
KEY `IX_Project_OrganizAccount_2` (`ProjectId`,`OrganizeId`,`AccountId`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;CREATE TABLE `Project_OrganizeType` (
`AutoID` int(11) NOT NULL AUTO_INCREMENT,
`OrganizeTypeID` char(36) NOT NULL,
`OrganizeTypeName` varchar(128) DEFAULT NULL,
`IsSysOrganiz` int(11) NOT NULL,
`CreateUser` char(36) DEFAULT NULL,
`LastModifyUser` char(36) DEFAULT NULL,
`ProjectID` char(36) DEFAULT NULL,
`CreateTime` datetime DEFAULT NULL,
`UpdateTime` datetime DEFAULT NULL,
PRIMARY KEY (`AutoID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
如果开启了 mongodb 连接认证,需要手动创建
mdintegration
库- 每个库有单独的用户认证:需要使用 admin 角色的用户创建与其他库一样的用户,例子如下:
mongo -u root -p 密码 --authenticationDatabase admin
use mdintegration
db.createUser({user: "修改成与其他库一样的用户",pwd: "修改成与其他库一样的密码",roles: [{role: "readWrite",db: "mdintegration"}]}) - 所有库有同一个用户认证:需要修改此用户的权限,授权新数据库
- 每个库有单独的用户认证:需要使用 admin 角色的用户创建与其他库一样的用户,例子如下:
如果启用外部文件对象存储,需要同步最新的预置文件 v1.3.0,参考 自定义文件对象存储
集群模式
对数据存储相关的服务器进行备份
微服务应用升级到
3.4.0
,参考 微服务升级镜像升级完成后进入微服务应用容器内(任意一个实例),具体步骤如下:
进入容器:
docker exec -it $(docker ps | grep community | awk '{print $1}') bash
更新预置文件:
source /entrypoint-cluster.sh && fileInit
(如果使用外部文件对象存储则不需要执行此命令,参考 自定义文件对象存储 重新初始化预置文件)连接 MySQL 数据库 :
mysql -h $ENV_MYSQL_HOST -P $ENV_MYSQL_PORT -u$ENV_MYSQL_USERNAME -p$ENV_MYSQL_PASSWORD
执行以下脚本
USE MDProject;
CREATE TABLE `Project_Organize` (
`AutoID` int(11) NOT NULL AUTO_INCREMENT,
`OrganizeID` char(36) NOT NULL,
`OrganizeTypeID` char(36) DEFAULT NULL,
`OrganizeName` varchar(128) DEFAULT NULL,
`ProjectID` char(36) NOT NULL,
`Remark` text,
`SortIndex` int(11) NOT NULL,
`CreateUser` char(36) DEFAULT NULL,
`LastModifyUser` char(36) DEFAULT NULL,
`CreateTime` datetime DEFAULT NULL,
`UpdateTime` datetime DEFAULT NULL,
PRIMARY KEY (`AutoID`),
KEY `IX_Project_Organize` (`ProjectID`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;CREATE TABLE `Project_OrganizeAccount` (
`AutoId` int(11) NOT NULL AUTO_INCREMENT,
`ProjectId` char(36) NOT NULL,
`OrganizeId` char(36) NOT NULL,
`AccountId` char(36) NOT NULL,
`CreateUser` char(36) DEFAULT NULL,
`CreateTime` datetime NOT NULL,
`UpdateTime` datetime NOT NULL,
`LastModifyUser` char(36) DEFAULT NULL,
PRIMARY KEY (`AutoId`),
KEY `IX_Project_OrganizAccount_2` (`ProjectId`,`OrganizeId`,`AccountId`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;CREATE TABLE `Project_OrganizeType` (
`AutoID` int(11) NOT NULL AUTO_INCREMENT,
`OrganizeTypeID` char(36) NOT NULL,
`OrganizeTypeName` varchar(128) DEFAULT NULL,
`IsSysOrganiz` int(11) NOT NULL,
`CreateUser` char(36) DEFAULT NULL,
`LastModifyUser` char(36) DEFAULT NULL,
`ProjectID` char(36) DEFAULT NULL,
`CreateTime` datetime DEFAULT NULL,
`UpdateTime` datetime DEFAULT NULL,
PRIMARY KEY (`AutoID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
如果开启了 mongodb 连接认证,需要手动创建
mdintegration
库- 每个库有单独的用户认证:需要使用 admin 角色的用户创建与其他库一样的用户,例子如下:
mongo -u root -p 密码 --authenticationDatabase admin
use mdintegration
db.createUser({user: "修改成与其他库一样的用户",pwd: "修改成与其他库一样的密码",roles: [{role: "readWrite",db: "mdintegration"}]}) - 所有库有同一个用户认证:需要修改此用户的权限,授权新数据库
- 每个库有单独的用户认证:需要使用 admin 角色的用户创建与其他库一样的用户,例子如下:
如果启用外部文件对象存储,需要同步最新的预置文件 v1.3.0,参考 自定义文件对象存储