这里会显示出您选择的修订版和当前版本之间的差别。
en:razor:upgrade-instruction-v0-5-to-v0-6 [2015/09/15 15:29] cobub v0.7.2 |
en:razor:upgrade-instruction-v0-5-to-v0-6 [2017/07/14 11:18] |
||
---|---|---|---|
行 1: | 行 1: | ||
- | ~~Title:Cobub Razor Upgrade Instruction (v0.5 to v0.6) - Mobile Apps Marketing Platform of Open Source - Mobile Analytics & Mobile Push Notification Solutions - Cobub Mobile Developer Center~~ | ||
- | {{description>Cobub Razor is an Open Source Mobile Analytics. When you are ready to upgrade Cobub Razor from version 0.5 to version 0.6, following steps is required:.}} | ||
- | {{keywords>Cobub Razor,open source mobile analytics,mobile analytics,mobile app analytics, upgrade}} | ||
- | |||
- | ====== 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://192.168.1.103/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: | ||
- | <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 == | ||
- | ^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: | ||
- | <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 == | ||
- | ^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: | ||
- | <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 == | ||
- | ^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: | ||
- | <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> | ||
- | |||
- | ==== 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: | ||
- | |||
- | <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、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: | ||
- | <code> | ||
- | ALTER TABLE `razordw.umsinstall_fact_event` CHANGE `deviceid` `deviceid` VARCHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL; | ||
- | </code> | ||
- | 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: | ||
- | <code> | ||
- | ALTER TABLE `razordw.umsinstall_log` CHANGE `op_date` `op_date` datetime DEFAULT NULL; | ||
- | </code> | ||
- | |||
- | Note: Other columns are similar. | ||
- | |||
- | add: | ||
- | |||
- | property name:op_starttime | ||
- | |||
- | property value:datetime DEFAULT NULL | ||
- | |||
- | sql: | ||
- | <code> | ||
- | ALTER TABLE `razordw.umsinstall_log` ADD COLUMN `op_starttime` datetime DEFAULT NULL; | ||
- | </code> | ||
- | |||
- | == 3)fact_reserveusers_monthly == | ||
- | Rename ‘**fact_reserveusers_monthly**’ to ‘**sum_reserveusers_monthly**`; | ||
- | |||
- | sql: | ||
- | <code> | ||
- | RENAME TABLE `razordw.umsinstall_fact_reserveusers_monthly` TO `razordw.umsinstall_sum_reserveusers_monthly`; | ||
- | </code> | ||
- | |||
- | add: | ||
- | |||
- | property name:channel_name | ||
- | |||
- | property value:varchar(128) NOT NULL | ||
- | |||
- | sql: | ||
- | <code>ALTER TABLE `razordw.umsinstall_sum_reserveusers_monthly` ADD COLUMN `channel_name` varchar(128) NOT NULL;</code> | ||
- | |||
- | 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: | ||
- | <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 == | ||
- | |||
- | Rename ‘**fact_reserveusers_weekly**’ to ‘**sum_reserveusers_weekly**’. | ||
- | |||
- | sql: | ||
- | <code>RENAME TABLE `razordw.umsinstall_fact_reserveusers_weekly` TO `razordw.umsinstall_sum_reserveusers_weekly`;</code> | ||
- | |||
- | add: | ||
- | property name:channel_name | ||
- | |||
- | property value:varchar(128) NOT NULL | ||
- | sql: | ||
- | <code>ALTER TABLE `razordw.umsinstall_sum_reserveusers_weekly` ADD COLUMN `channel_name` varchar(128) NOT NULL; | ||
- | </code> | ||
- | 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: | ||
- | <code>ALTER TABLE `razordw.umsinstall_sum_reserveusers_weekly` ADD UNIQUE( `startdate_sk`, `enddate_sk`, `product_id`, `version_name`, `channel_name`);</code> | ||
- | ==== 3、Modify the stored procedures ==== | ||
- | |||
- | |||
- | Stored procedures: **rundaily** 、 **rundim** 、 **runfact** 、 **runmonthly** 、 **runsum** and **runweekly** 。 | ||
- | |||
- | Steps: | ||
- | |||
- | 1)you will get six sql script files under the directory of **assets\sql** of V0.6 : **sp_rundaily.sql** 、 **sp_rundim.sql** 、 **sp_runfact.sql** 、 **sp_runmonthly.sql** 、 **sp_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://192.168.1.103/web’ in **config.php**. | ||