用户工具

站点工具


Upgrade Instruction (v0.5 to v0.6)

When you are ready to upgrade Cobub Razor from version 0.5 to version 0.6, following steps is required:

Step one: download the code of V0.6

1、Download the code of version 0.6 from https://github.com/cobub/razor , and you can get the razor-master.zip, unzip it to get razor-master folder, which contains the sdk and web folders.

2、Copy the web folder to the directory of your web site where you are ready to upgrade Cobub Razor (Note: web can not be the same name with Cobub Razor’s name of V0.4 or V0.5 ). To facilitate debugging, you can rename ”web” to “razor_v6“, and set the $ config ['base_url'] value to the ‘http://yoururl/razor_v6 ‘ in config.php which is under the application folder.

3、Copy the autoload.php and database.php of V0.5 under the directory of application\config\ to the diretory of application\config\ of V0.6, override these two files of V0.6, and replace $route['default_controller'] = “install/installation” to $route['default_controller'] = “report/home” of V0.6 in routes.php.

Step two: modify script files of database and data warehouse

Here, assume that your database is razor and data warehouse is razordw, and umsinstall_ is the table prefix of them.

1、Modify database

1.1、Add tables

1) getui_product
property name property value index
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:

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;
2)plugins
property name property value index
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:

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;
3)tag_group
property name property value index
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:

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;
4) userkeys
property name property value index
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:

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;

2、Modify the data warehouse

2.1、Add tables

1)sum_reserveusers_daily
property name property value index
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: UNIQUE KEY `startdate_sk` (`startdate_sk`, `enddate_sk`, `product_id`, `version_name`, `channel_name`)

sql:

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;

2.2、Modify tables

1) fact_event
property name property value changes
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:

ALTER TABLE `razordw.umsinstall_fact_event` CHANGE `deviceid` `deviceid` VARCHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL;

Note: Other columns are similar.

2)log
property name property value changes
op_date datetime NOT NULL → DEFAULT NULL
affected_rows int(11) NOT NULL → DEFAULT NULL
duration int(11) NOT NULL → DEFAULT NULL

sql:

ALTER TABLE `razordw.umsinstall_log` CHANGE `op_date` `op_date` datetime  DEFAULT NULL;

Note: Other columns are similar.

add:

property name:op_starttime

property value:datetime DEFAULT NULL

sql:

ALTER TABLE `razordw.umsinstall_log` ADD COLUMN `op_starttime` datetime DEFAULT NULL;
3)fact_reserveusers_monthly

Rename ‘fact_reserveusers_monthly’ to ‘sum_reserveusers_monthly`;

sql:

RENAME TABLE `razordw.umsinstall_fact_reserveusers_monthly` TO `razordw.umsinstall_sum_reserveusers_monthly`;

add:

property name:channel_name

property value:varchar(128) NOT NULL

sql:

ALTER TABLE `razordw.umsinstall_sum_reserveusers_monthly` ADD COLUMN `channel_name` varchar(128) NOT NULL;

modify unique key: change UNIQUE KEY `startdate_sk` (`startdate_sk`,`enddate_sk`,`product_id`,`version_name`) to UNIQUE KEY `startdate_sk` (`startdate_sk`,`enddate_sk`,`product_id`,`version_name`,`channel_name`).

sql:

ALTER TABLE `razordw.umsinstall_sum_reserveusers_monthly` ADD UNIQUE( `startdate_sk`, `enddate_sk`, `product_id`, `version_name`, `channel_name`);
4)fact_reserveusers_weekly

Rename ‘fact_reserveusers_weekly’ to ‘sum_reserveusers_weekly’.

sql:

RENAME TABLE `razordw.umsinstall_fact_reserveusers_weekly` TO `razordw.umsinstall_sum_reserveusers_weekly`;

add: property name:channel_name

property value:varchar(128) NOT NULL sql:

ALTER TABLE `razordw.umsinstall_sum_reserveusers_weekly` ADD COLUMN `channel_name` varchar(128) NOT NULL;

change UNIQUE KEY `startdate_sk` (`startdate_sk`,`enddate_sk`,`product_id`,`version_name`) to UNIQUE KEY `startdate_sk` (`startdate_sk`,`enddate_sk`,`product_id`,`version_name`,`channel_name`).

sql:

ALTER TABLE `razordw.umsinstall_sum_reserveusers_weekly` ADD UNIQUE( `startdate_sk`, `enddate_sk`, `product_id`, `version_name`, `channel_name`);

3、Modify the stored procedures

Stored procedures: rundailyrundimrunfactrunmonthlyrunsum and runweekly

Steps:

1)you will get six sql script files under the directory of assets\sql of V0.6 : sp_rundaily.sqlsp_rundim.sqlsp_runfact.sqlsp_runmonthly.sqlsp_runsum.sql and sp_runweekly.sql.

2) modify table prefix

Modify the umsinstall_ in all sql scirpt files above to your own data warehouse’s table prefix, for example,your data warehouse table prefix “razordw_”;

Replace the “databaseprefix.umsdatainstall_” to “database.database’s table prefix”, for example, your database is cobubrazor,and database’s table prefix is razor_,the ”databaseprefix.umsdatainstall_” should be “cobubrazor.razor_“.

Step three: stop inserting data to database and pause the stored procedures.

Note: you need to have prepared all the relevant SQL scripts(i.e. all sql scripts in Step two).

Step four: delete all stored procedures in data warehouse.

Step five: execute the SQL scripts generated in Step two.

Note: Please backup the data of your database and data warehouse before you execute the sql scripts.

Step six:restart the database and data warehouse.

Before this step, you need to do the last thing :

Backup the directory of the previous web site(e.g web,which is the root directory of version 0.5),store it in a suitable place and named web-backup0.5, then delete web.

Change”razor_v6” to “web”(the name of V0.5),and set $config['base_url']= ‘http://yoururl/web’ in config.php.

en/razor/upgrade-instruction-v0-5-to-v0-6.txt · 最后更改: 2017/07/14 11:18 (外部编辑)