这里会显示出您选择的修订版和当前版本之间的差别。
razor:upgrade-instruction-v0-5-to-v0-6 [2015/03/17 17:56] cobub [2.2、修改表] |
razor:upgrade-instruction-v0-5-to-v0-6 [2017/07/14 11:18] |
||
---|---|---|---|
行 1: | 行 1: | ||
- | ====== V5-v6升级手册 ====== | ||
- | Cobub Razor从版本0.5升级到版本0.6,具体需要如下步骤: | ||
- | ===== 步骤一: 下载V0.6版本最新代码 ===== | ||
- | 1、从 [[https://github.com/cobub/razor|https://github.com/cobub/razor]] 下载0.6版本的代码,得到razor-master.zip压缩包,将其解压得到razor-master文件夹,里面包含sdk和web文件夹等。 | ||
- | |||
- | 2、将上面的 web 文件夹复制你准备升级部署网站的web目录下(注意复制前 web 名称不能与前几个版本的名称相同)。为了方便调试,你可以将”web”修改成”razor_v6″,并将里面的application文件夹下的config.php文件中的$config['base_url']= ‘http://yoururl/razor_v6′。 | ||
- | |||
- | 3、将0.5版本的application\config\目录下的文件autoload.php、database.php复制到0.6版本的application\config\目录下,覆盖0.6版本的这两个文件,并把0.6版本里的routes.php文件中的$route['default_controller'] = “install/installation” 修改成 $route['default_controller'] = “report/home”。 | ||
- | |||
- | ===== 步骤二: 准备修改数据库和数据仓库的脚本文件 ===== | ||
- | |||
- | 这里假设你的数据库为 razor ,数据仓库为 razordw ,数据库和数据仓库中的表前缀均为 **umsinstall_** 。 | ||
- | ====== 1、修改数据库 ====== | ||
- | |||
- | ===== 1.1、增加表 ===== | ||
- | |||
- | 1)新增表 **getui_product** | ||
- | |||
- | ^属性名称 ^属性值 ^索引 ^ | ||
- | |id |int(11) NOT NULL AUTO_INCREMENT| PRIMARY KEY| | ||
- | |product_id |int(11) DEFAULT NULL| | | ||
- | |is_active |tinyint(4) DEFAULT NULL| | | ||
- | |app_id |varchar(25) DEFAULT NULL| | | ||
- | |user_id |int(8) DEFAULT NULL| | | ||
- | |app_key |varchar(25) NOT NULL| | | ||
- | |app_secret |varchar(25) NOT NULL| | | ||
- | |app_mastersecret |varchar(25) NOT NULL| | | ||
- | |app_identifier |varchar(25) NOT NULL| | | ||
- | |activate_date |datetime NOT NULL| | | ||
- | |||
- | **sql语句(注意修改表前缀umsinstall_,下同):** | ||
- | <code> | ||
- | CREATE TABLE `razor.umsinstall_getui_product` ( | ||
- | `id` int(11) NOT NULL AUTO_INCREMENT, | ||
- | `product_id` int(11) DEFAULT NULL, | ||
- | `is_active` tinyint(4) DEFAULT NULL, | ||
- | `app_id` varchar(25) DEFAULT NULL, | ||
- | `user_id` int(8) DEFAULT NULL, | ||
- | `app_key` varchar(25) NOT NULL, | ||
- | `app_secret` varchar(25) NOT NULL, | ||
- | `app_mastersecret` varchar(25) NOT NULL, | ||
- | `app_identifier` varchar(25) NOT NULL, | ||
- | `activate_date` datetime NOT NULL, | ||
- | PRIMARY KEY (`id`), | ||
- | UNIQUE KEY `id` (`id`) | ||
- | ) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
- | </code> | ||
- | |||
- | 2)新增表 **plugins** | ||
- | |||
- | ^属性名称 ^属性值 ^索引^ | ||
- | |id |int(11) NOT NULL AUTO_INCREMENT |PRIMARY KEY| | ||
- | |identifier |varchar(50) NOT NULL| | | ||
- | |user_id |int(50) NOT NULL| | | ||
- | |status |int(10) NOT NULL| | | ||
- | |||
- | **sql语句:** | ||
- | <code> | ||
- | CREATE TABLE `razor.umsinstall_plugins` ( | ||
- | `id` int(11) NOT NULL AUTO_INCREMENT, | ||
- | `identifier` varchar(50) NOT NULL, | ||
- | `user_id` int(50) NOT NULL, | ||
- | `status` int(10) NOT NULL, | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;</code> | ||
- | |||
- | 3)新增表 **tag_group** | ||
- | |||
- | ^属性名称 ^属性值 ^索引^ | ||
- | |id |int(4) NOT NULL AUTO_INCREMENT |PRIMARY KEY| | ||
- | |product_id |int(4) NOT NULL| | | ||
- | |name |varchar(200) NOT NULL| | | ||
- | |tags |varchar(5000) NOT NULL| | | ||
- | |time |timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP || | ||
- | **sql语句:** | ||
- | <code> | ||
- | CREATE TABLE `razor.umsinstall_tag_group` ( | ||
- | `id` int(4) NOT NULL AUTO_INCREMENT, | ||
- | `product_id` int(4) NOT NULL, | ||
- | `name` varchar(200) NOT NULL, | ||
- | `tags` varchar(5000) NOT NULL, | ||
- | `time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=MyISAM DEFAULT CHARSET=utf8;</code> | ||
- | |||
- | 4)新增表 **userkeys** | ||
- | |||
- | ^属性名称 ^属性值 ^索引^ | ||
- | |id |int(20) NOT NULL AUTO_INCREMENT| PRIMARY KEY| | ||
- | |user_id |int(20) NOT NULL| | | ||
- | |user_key |varchar(50) NOT NULL| | | ||
- | |user_secret |varchar(50) NOT NULL| | | ||
- | **sql语句:** | ||
- | <code> | ||
- | CREATE TABLE `umsinstall_userkeys` ( | ||
- | `id` int(20) NOT NULL AUTO_INCREMENT, | ||
- | `user_id` int(20) NOT NULL, | ||
- | `user_key` varchar(50) NOT NULL, | ||
- | `user_secret` varchar(50) NOT NULL, | ||
- | PRIMARY KEY (`id`) | ||
- | ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;</code> | ||
- | |||
- | ===== 1.2、修改表 ===== | ||
- | |||
- | |||
- | 1)修改表 **channel_product** | ||
- | |||
- | ^属性名称 ^属性值 ^变化^ | ||
- | |description |varchar(5000) |NOT NULL-> DEFAULT NULL| | ||
- | **sql语句:** | ||
- | <code> | ||
- | ALTER TABLE `razor.umsinstall_channel_product` | ||
- | CHANGE `description` `description` VARCHAR(5000) | ||
- | CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL;</code> | ||
- | |||
- | 2)修改表 **eventdata** | ||
- | |||
- | ^属性名称 ^属性值 ^变化^ | ||
- | |deviceid |varchar(50) |NOT NULL -> DEFAULT NULL| | ||
- | |category |varchar(50) |NOT NULL -> DEFAULT NULL| | ||
- | |event |varchar(50) |NOT NULL -> DEFAULT NULL| | ||
- | |label |varchar(50) |NOT NULL -> DEFAULT NULL| | ||
- | |attachment |varchar(50) |NOT NULL -> DEFAULT NULL| | ||
- | **sql语句:** | ||
- | <code> | ||
- | ALTER TABLE `razor.umsinstall_eventdata` | ||
- | CHANGE `deviceid` `deviceid` VARCHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL;</code> | ||
- | **注:其他列category,event,label,attachment类似方法修改。** | ||
- | |||
- | 3)修改表 **markevent** | ||
- | |||
- | ^属性名称 ^属性值 ^变化^ | ||
- | |productid |int(50) |NOT NULL -> NOT NULL DEFAULT ‘-1′| | ||
- | **sql语句:** | ||
- | <code> | ||
- | ALTER TABLE `razor.umsinstall_markevent` | ||
- | CHANGE `productid` `productid` INT( 50 ) NOT NULL DEFAULT '-1';</code> | ||
- | |||
- | 4)修改表** reportlayout** | ||
- | |||
- | ^属性名称 ^属性值 ^变化^ | ||
- | |method |varchar(45) |NOT NULL -> DEFAULT ‘ ‘| | ||
- | **sql语句:** | ||
- | <code> | ||
- | ALTER TABLE `razor.umsinstall_reportlayout` | ||
- | CHANGE `method` `method` VARCHAR(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT ' ';</code> | ||
- | ====== 2、修改数据仓库 ====== | ||
- | |||
- | ===== 2.1、新增表 ===== | ||
- | |||
- | 1)新增表 **sum_reserveusers_daily** | ||
- | |||
- | ^属性名称 ^属性值 ^索引^ | ||
- | |rid |int(11) NOT NULL AUTO_INCREMENT |PRIMARY KEY| | ||
- | |startdate_sk |int(11) NOT NULL|| | | ||
- | |enddate_sk |int(11) NOT NULL| | | ||
- | |product_id |int(11) NOT NULL| | | ||
- | |version_name |varchar(128) NOT NULL| | | ||
- | |channel_name |varchar(128) NOT NULL| | | ||
- | |usercount |int(11) NOT NULL DEFAULT 0| | ||
- | |day1 |int(11) NOT NULL DEFAULT 0| | | ||
- | |day2 |int(11) NOT NULL DEFAULT 0| | | ||
- | |day3 |int(11) NOT NULL DEFAULT 0| | | ||
- | |day4 |int(11) NOT NULL DEFAULT 0| | | ||
- | |day5 |int(11) NOT NULL DEFAULT 0| | | ||
- | |day6 |int(11) NOT NULL DEFAULT 0| | | ||
- | |day7 |int(11) NOT NULL DEFAULT 0| | | ||
- | |day8 |int(11) NOT NULL DEFAULT 0| | | ||
- | |||
- | 联合唯一键: | ||
- | UNIQUE KEY `startdate_sk` (`startdate_sk`, `enddate_sk`, `product_id`, `version_name`, `channel_name`) | ||
- | |||
- | **sql语句:** | ||
- | <code> | ||
- | CREATE TABLE `razordw.umsinstall_sum_reserveusers_daily` ( | ||
- | `rid` int(11) NOT NULL AUTO_INCREMENT, | ||
- | `startdate_sk` int(11) NOT NULL, | ||
- | `enddate_sk` int(11) NOT NULL, | ||
- | `product_id` int(11) NOT NULL, | ||
- | `version_name` varchar(128) NOT NULL, | ||
- | `channel_name` varchar(128) NOT NULL, | ||
- | `usercount` int(11) NOT NULL DEFAULT 0, | ||
- | `day1` int(11) NOT NULL DEFAULT 0, | ||
- | `day2` int(11) NOT NULL DEFAULT 0, | ||
- | `day3` int(11) NOT NULL DEFAULT 0, | ||
- | `day4` int(11) NOT NULL DEFAULT 0, | ||
- | `day5` int(11) NOT NULL DEFAULT 0, | ||
- | `day6` int(11) NOT NULL DEFAULT 0, | ||
- | `day7` int(11) NOT NULL DEFAULT 0, | ||
- | `day8` int(11) NOT NULL DEFAULT 0, | ||
- | PRIMARY KEY (`rid`), | ||
- | UNIQUE KEY `startdate_sk` (`startdate_sk`,`enddate_sk`,`product_id`,`version_name`,`channel_name`) | ||
- | ) ENGINE=InnoDB DEFAULT CHARSET=utf8; | ||
- | </code> | ||
- | ===== 2.2、修改表 ===== | ||
- | |||
- | 1)修改表 **fact_event** | ||
- | |||
- | ^属性名称 ^属性值 ^变化^ | ||
- | |deviceid |varchar(50) |NOT NULL -> DEFAULT NULL| | ||
- | |category |varchar(50) |NOT NULL -> DEFAULT NULL| | ||
- | |label |varchar(50) |NOT NULL -> DEFAULT NULL| | ||
- | |attachment |varchar(50) |NOT NULL -> DEFAULT NULL| | ||
- | **sql语句:** | ||
- | <code> | ||
- | ALTER TABLE `razordw.umsinstall_fact_event` CHANGE `deviceid` `deviceid` VARCHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL; | ||
- | </code> | ||
- | 注:其他列类似。 | ||
- | |||
- | 2)修改表 **log** | ||
- | |||
- | ^属性名称 ^属性值 ^变化^ | ||
- | |op_date |datetime |NOT NULL -> DEFAULT NULL| | ||
- | |affected_rows |int(11) |NOT NULL -> DEFAULT NULL| | ||
- | |duration |int(11) |NOT NULL -> DEFAULT NULL| | ||
- | **sql语句:** | ||
- | <code> | ||
- | ALTER TABLE `razordw.umsinstall_log` CHANGE `op_date` `op_date` datetime DEFAULT NULL; | ||
- | </code> | ||
- | 注:其他列类似。 | ||
- | |||
- | 新增属性名称为op_starttime,属性值为datetime DEFAULT NULL。 | ||
- | |||
- | **sql语句:** | ||
- | <code> | ||
- | ALTER TABLE `razordw.umsinstall_log` ADD COLUMN `op_starttime` datetime DEFAULT NULL; | ||
- | </code> | ||
- | |||
- | 3)修改表 **fact_reserveusers_monthly** | ||
- | |||
- | 修改表名 **fact_reserveusers_monthly** 为 **sum_reserveusers_monthly**; | ||
- | **sql语句:** | ||
- | <code> | ||
- | RENAME TABLE `razordw.umsinstall_fact_reserveusers_monthly` TO `razordw.umsinstall_sum_reserveusers_monthly`; | ||
- | </code> | ||
- | |||
- | 新增属性名称channel_name,属性值为 varchar(128) NOT NULL; | ||
- | |||
- | **sql语句:** | ||
- | <code> | ||
- | ALTER TABLE `razordw.umsinstall_sum_reserveusers_monthly` ADD COLUMN `channel_name` varchar(128) NOT NULL;</code> | ||
- | 联合唯一键由 UNIQUE KEY `startdate_sk` (`startdate_sk`,`enddate_sk`,`product_id`,`version_name`) | ||
- | 修改为UNIQUE KEY `startdate_sk` (`startdate_sk`,`enddate_sk`,`product_id`,`version_name`,`channel_name`)。 | ||
- | |||
- | **sql语句:** | ||
- | <code>ALTER TABLE `razordw.umsinstall_sum_reserveusers_monthly` ADD UNIQUE( `startdate_sk`, `enddate_sk`, `product_id`, `version_name`, `channel_name`);</code> | ||
- | |||
- | 4)修改表 **fact_reserveusers_weekly** | ||
- | |||
- | 修改表名 **fact_reserveusers_weekly** 为 **sum_reserveusers_weekly**; | ||
- | |||
- | **sql语句:** | ||
- | <code> | ||
- | RENAME TABLE `razordw.umsinstall_fact_reserveusers_weekly` TO `razordw.umsinstall_sum_reserveusers_weekly`;</code> | ||
- | 新增属性名称channel_name,属性值为 varchar(128) NOT NULL; | ||
- | |||
- | **sql语句:** | ||
- | <code> | ||
- | ALTER TABLE `razordw.umsinstall_sum_reserveusers_weekly` ADD COLUMN `channel_name` varchar(128) NOT NULL;</code> | ||
- | 联合唯一键由 UNIQUE KEY `startdate_sk` (`startdate_sk`,`enddate_sk`,`product_id`,`version_name`) | ||
- | 修改为UNIQUE KEY `startdate_sk` (`startdate_sk`,`enddate_sk`,`product_id`,`version_name`,`channel_name`)。 | ||
- | |||
- | **sql语句:** | ||
- | <code> | ||
- | ALTER TABLE `razordw.umsinstall_sum_reserveusers_weekly` ADD UNIQUE( `startdate_sk`, `enddate_sk`, `product_id`, `version_name`, `channel_name`);</code> | ||
- | |||
- | ====== 3、修改存储过程 ====== | ||
- | |||
- | |||
- | 修改存储过程 **rundaily** 、 **rundim** 、 **runfact** 、 **runmonthly** 、 **runsum** 和 **runweekly** 。 | ||
- | |||
- | 步骤: | ||
- | 步骤一:下载新的v0.6版本的代码,目录assets\sql下的存储过程有 sp_rundaily.sql 、 sp_rundim.sql 、 sp_runfact.sql 、 sp_runmonthly.sql 、 sp_runsum.sql和 sp_runweekly.sql 。 | ||
- | |||
- | 步骤二:修改表前缀名,将各个存储过程中的umsinstall_修改为你数据仓库中的表前缀名,如你的数据仓库中的表前缀为”razordw_”;另外将其中的“databaseprefix.umsdatainstall_”换成“数据库名称.基础数据库前缀”,如你的数据库名称为cobubrazor,数据库表前缀为razor_,则修改为“cobubrazor.razor_”。 | ||
- | |||
- | |||
- | 步骤三: 暂停数据库的数据插入和及数据仓库中的抽数过程。 | ||
- | |||
- | 暂时停止前请先准备好相关的SQL脚本(即步骤二中生成的相关脚本)。 | ||
- | |||
- | |||
- | 步骤四: 删除数据仓库中所有存储过程。 | ||
- | |||
- | |||
- | 步骤五: 执行步骤二中生成的相关sql脚本。 | ||
- | |||
- | 执行相关脚本前,请先备份一下数据库和数据仓库中的数据。 | ||
- | |||
- | |||
- | 步骤六:重新启动数据库和数据仓库。 | ||
- | |||
- | 重启数据库和数据仓库前,请先将步骤一中的第2步中以前版本的“web”目录备份,命名为web-backup0.5,存储在合适的地方,删除“web”。然后将“razor_v6”修改成“web”(以前的版本的名称),并修改config.php文件的$config['base_url']= ‘http://192.168.1.103/web’。 | ||
- | |||
- | |||