CN105204897B - 一种MySQL的批量化安装部署方法 - Google Patents
一种MySQL的批量化安装部署方法 Download PDFInfo
- Publication number
- CN105204897B CN105204897B CN201510581721.0A CN201510581721A CN105204897B CN 105204897 B CN105204897 B CN 105204897B CN 201510581721 A CN201510581721 A CN 201510581721A CN 105204897 B CN105204897 B CN 105204897B
- Authority
- CN
- China
- Prior art keywords
- mysql
- deployment
- installation
- server
- innodb
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种MySQL的批量化安装部署方法,包括如下步骤:a)获取MySQL二进制发行版,解压得到MySQL主目录及其下的文件;b)在MySQL主目录下创建参数文件、初始化数据文件并修改帐号,生成适用于当前环境的MySQL安装部署包;c)配置部署服务器,并将MySQL安装部署包远程传输到目标服务器的指定目录;d)所述目标服务器根据接收到的MySQL安装部署包进行配置,完成MySQL安装部署。本发明通过预先生成适用于当前环境的MySQL安装部署包,减少了实际部署时所需步骤和时间;并利用部署服务器实现远程传输,易于批量化完成MySQL的安装部署,大大提高MySQL的部署效率,可行性高。
Description
技术领域
本发明涉及一种MySQL的安装部署方法,尤其涉及一种MySQL的批量化安装部署方法。
背景技术
MySQL是一个关系型数据库,支持事务、索引、多版本控制、异常恢复等重要特性,加上其开源和轻量级的特点,被互联网企业、创业公司等接受和大量使用,是目前运行实例数量最多的关系型数据库。Linux是数据中心最主流的操作系统,大多数MySQL也运行在Linux,本发明探讨基于Linux的MySQL部署方法。
与主流的商业关系型数据库相比,MySQL的安装部署相对简单,通过Linux发行版的软件包管理工具可以轻松完成。只是,这样安装的都是预先定义好的MySQL软件包,无法改用其他版本、或改变安装目录等。
官方还提供MySQL二进制发行版,官方将编译好的二进制文件及其他必要的文件存放在一个目录中,并压缩成一个归档文件。下载这个压缩归档文件,解压后即得到一个目录,所有的安装文件都在这个目录下。
使用MySQL的开源版本时,下载源码编译安装也是常用的方法。在编译阶段可以设置根目录、选择支持哪些字符集等,最大限度地满足安装需求,只是对技术人员的要求比较高。
完成软件安装后,还需要设置环境变量、书写参数文件、初始化数据文件等诸多后续步骤,才算完成MySQL的部署,这些步骤,在很多情况下是由技术人员手工逐个完成的。
在很多时候,MySQL的安装部署只需考虑最方便的方式即可。但是,当MySQL在数据中心中大规模使用、或作为一种云服务提供给客户时,就必须审视安装部署的整个过程。比如,为了使MySQL运行稳定,一般需要使用几个特定的版本;尽可能保持MySQL部署环境的一致性,以简化大规模运维;因为部署的MySQL非常多,需要快速地完成部署,最大程度地自动化完成,提高服务响应能力,并降低成本。
发明内容
本发明所要解决的技术问题是如何在数据中心大规模使用MySQL时,高效率地完成MySQL的安装部署,以提高部署效率并降低成本。
本发明为解决上述技术问题而采用的技术方案是提供一种MySQL的批量化安装部署方法,包括如下步骤:a)获取MySQL二进制发行版,解压得到MySQL主目录及其下的文件;b)在MySQL主目录下创建参数文件、初始化数据文件并修改帐号,生成适用于当前环境的MySQL安装部署包;c)配置部署服务器,利用部署服务器将MySQL安装部署包远程传输到目标服务器的指定目录;d)所述目标服务器根据接收到的MySQL安装部署包进行配置,完成MySQL安装部署。
上述的MySQL的批量化安装部署方法,其中,所述步骤b)创建的参数文件为my.cnf,所述参数文件包含InnoDB缓存池参数以及server_id参数;所述步骤b)通过执行scripts/mysql_install_db--defaults-file=my.cnf完成数据目录下数据文件的初始化。
上述的MySQL的批量化安装部署方法,其中,所述步骤b)中修改帐号包括:保留三个MySQL的初始用户:root@127.0.0.1、root@::1和root@localhost,并删除掉其他的初始用户。
上述的MySQL的批量化安装部署方法,其中,所述步骤b)还包括创建InnoDB缓存池参数修改脚本,使得目标服务器根据当前系统内存大小设定InnoDB缓存池大小以及InnoDB缓存池实例数;所述InnoDB缓存池大小为当前目标服务器的MySQL主目录下/proc/meminfo中读取到的系统内存大小的70%~80%;所述InnoDB缓存池实例数的值根据InnoDB缓存池大小设定,1GB左右对应一个实例,实例数最多为32个。
上述的MySQL的批量化安装部署方法,其中,所述步骤b)还包括创建server_id参数修改脚本,使得目标服务器获取当前系统的IPv4地址A.B.C.D,并将server_id设置为A*256*256*256+B*256*256+C*256+D。
上述的MySQL的批量化安装部署方法,其中,所述步骤c)中的部署服务器上存储有MySQL安装部署包,所述部署服务器设置SSH免密码登录目标服务器,使用SCP命令将所述MySQL安装部署包传输至目标服务器。
上述的MySQL的批量化安装部署方法,其中,所述步骤c)中的部署服务器通过SSH免密码登录方式在目标服务器上远程调用InnoDB缓存池参数修改脚本和server_id参数修改脚本,完成MySQL部署。
上述的MySQL的批量化安装部署方法,其中,所述部署服务器与其他业务系统合用一个Linux服务器,一个部署服务器对应多个目标服务器,并可进行并行执行部署。
本发明对比现有技术有如下的有益效果:本发明提供的MySQL的批量化安装部署方法,通过在MySQL主目录下创建参数文件、初始化数据文件并修改帐号,生成适用于当前环境的MySQL安装部署包,减少了实际部署时所需步骤和时间;并利用部署服务器实现远程传输调用,从而能够批量化完成MySQL的安装部署,大大提高MySQL的部署效率,可行性高,大大降低运维复杂度。此外,本发明基于IPv4计算出唯一的server_id值,并通过远程调用在每一目标服务器实现InnoDB缓存池参数和server_id参数的在线配置,进一步提高MySQL的部署效率和可行性。
附图说明
图1为本发明MySQL的批量化安装部署流程示意图;
图2为本发明的InnoDB缓存池参数设置示意图;
图3为本发明的唯一server_id参数设置示意图;
图4为本发明采用的部署服务器与目标服务器连接示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的描述。
图1为本发明MySQL的批量化安装部署流程示意图。
请参见图1,本发明提供的MySQL的批量化安装部署方法,包括如下步骤:
步骤S1:获取MySQL二进制发行版,解压得到MySQL主目录及其下的文件;本发明的MySQL软件包使用官方Linux通用二进制发行版,其具有编译质量优秀、独立主目录、拷贝即可使用、适用绝大部分Linux发行版的优点。
步骤S2:在MySQL主目录下创建参数文件、初始化数据文件并修改帐号,生成适用于当前环境的MySQL安装部署包;
步骤S3:配置部署服务器,利用部署服务器将MySQL安装部署包远程传输到目标服务器的指定目录;
步骤S4:所述目标服务器根据接收到的MySQL安装部署包进行配置,完成MySQL安装部署。
现有使用官方Linux通用二进制发行版部署MySQL的步骤依次是安装软件、创建参数文件、初始化数据文件、修改帐号。为了提高MySQL的部署效率,本发明提出将创建参数文件、初始化数据文件、修改帐号等步骤提前执行完成,将相关文件集成到官方Linux通用二进制发行版中,生成适用于当前环境的安装部署包。如此,实际部署MySQL的执行步骤就可以减少。
本发明的MySQL安装部署包按如下步骤生成:
1.为MySQL分配一个单独块设备,文件系统格式化后挂载到/u01,MySQL主目录为/u01/mysql,MySQL参数文件为/u01/mysql/my.cnf。
2.操作系统中添加dba用户组,并添加用户组为dba的mysql用户。
3.设置四个环境变量:
export MY_BASEDIR_VERSION=/u01/mysql,MYSQL_HOME=/u01/mysql,
PATH=/u01/mysql/bin:$PATH,LD_LIBRARY_PATH=/u01/mysql/lib。
官方Linux通用二进制发行版是一个压缩包,解压之后是一个目录及其下的文件,该目录即MySQL主目录。进入该目录,创建参数文件my.cnf,之后执行scripts/mysql_install_db--defaults-file=my.cnf初始化数据文件,这些数据文件存放在MySQL主目录下的data子目录。接着,完成MySQL用户修改等操作,MySQL的初始用户保留三个:root@127.0.0.1、root@::1和root@localhost,其他的删除掉,即出于安全考虑禁用无名帐号和远程超级权限帐号;关闭MySQL,删除auto.cnf文件,防止所有后续部署的server-uuid都相同。二进制日志、错误日志文件、慢日志等也同样删除掉,仅保留必要的文件。最后得到的即是MySQL安装部署包,从目录和文件上看,它多了my.cnf参数文件、data下的数据文件。现在,该MySQL主目录包含了参数文件、数据文件,帐号也已经修改为符合安全要求,即是上述所称的MySQL安装部署包。
MySQL参数文件my.cnf的主要内容如下:
[client]
socket=/u01/mysql/mysql.sock
[mysqld]
socket=/u01/mysql/mysql.sock
basedir=/u01/mysql
datadir=/u01/mysql/data
server_id=1
innodb_buffer_pool_size=8G
innodb_buffer_pool_instances=1
实际部署MySQL时,针对每一个不同的目标服务器,还需要特殊设置个别MySQL参数以进一步适应当前Linux操作系统,这里阐述一下这些MySQL参数的修改算法。
首先,InnoDB缓存池大小对MySQL性能影响巨大,需要根据每一个目标服务器上Linux操作系统的内存相应修改,取其70%~80%,尽可能地利用内存。本发明从/proc/meminfo中读取系统内存大小,取其75%大小作为InnoDB缓存池大小(innodb_buffer_pool_size),如图2所示。InnoDB缓存池实例数(innodb_buffer_pool_instances)的值根据InnoDB缓存池大小而不同,1GB左右对应一个实例,实例数最多为32个,如下表所示:
InnoDB缓存池大小 | InnoDB缓存池实例数 |
<2GB | 1 |
<3GB | 2 |
<4GB | 3 |
… | … |
<32GB | 31 |
>=32GB | 32 |
其次,同一个复制架构中的每个MySQL需要设置不同的server_id参数,以免引起经典的复制死循环等问题。复制死循环发生的一个场景是,MySQL部署时使用相同的server_id,在搭建复制架构时,需要手工检查同一复制架构中server_id的唯一性,如果不小心没有检查,就造成复制死循环。很多人没有注意到,server_id参数的取值范围其实相当于一个4字节的无符号整型,与每个IPv4使用4字节正好保持一致。因此,考虑到一个数据中心的每个Linux操作系统都具有唯一的IPv4地址,本发明的server_id可以从该IPv4通过一种计算方法得到,如图3所示。
有别于使用手工方案修改MySQL参数,本发明通过一段脚本自动化完成MySQL参数的修改,操作系统普通用户的环境变量设置也使用脚本实现。
本发明使用一个Linux服务器作为部署的执行平台,以提高效率,这里称其为部署服务器,而众多待部署MySQL的Linux服务器则是目标服务器,如图4所示。部署服务器能够免密码SSH到目标服务器,能远程执行高权限命令。因为部署服务器需要的存储空间不多,且是间断性执行部署任务的,因此它可以与其他业务系统合用一个Linux服务器。前面所述的MySQL安装部署包存放在部署节点,同时需要一段部署脚本的配合,其主要实现过程如下:
1.将MySQL安装部署包远程传输到目标服务器的指定目录。
2.为MySQL主目录以及其下的所有文件设置合理权限。
3.在目标服务器上运行配置脚本,完成MySQL参数文件和环境变量的设置。
上述步骤均可在部署服务器上执行完成,减少没有必要的目标服务器登录跳转。进一步地,可以将这些命令汇总到一个部署脚本中,每个MySQL的部署均只需带参数地执行该脚本即可。本发明的部署脚本主要内容可以设置如下:
MYSQL_HOME=/u01/mysql
cd$MYSQL_HOME
MEM_TOTAL=`grep MemTotal/proc/meminfo|awk'{print$2}'`
BUFFER_POOL_SIZE=$((MEM_TOTAL*3/4/1024/1024))
if["$BUFFER_POOL_SIZE"-lt 2]
then
BUFFER_POOL_INSTANCE=1
elif["$BUFFER_POOL_SIZE"-ge 32]
then
BUFFER_POOL_INSTANCE=32
else
BUFFER_POOL_INSTANCE=${BUFFER_POOL_SIZE%.*}
fi
sed-i
s/innodb_buffer_pool_size=[0-9]*G/innodb_buffer_pool_size=${BUFFER_POO
L_SIZE}G/g my.cnf
sed-i
s/innodb_buffer_pool_instances=[0-9]*/innodb_buffer_pool_instances={BU
FFER_POOL_INSTANCE}/g my.cnf
IP=`ip addr|sed-n's/[]*inet
\([0-9]\{1,3\}\(\.[0-9]\{1,3\}\)\{3\}\).*/\1/p'|egrep-v'^127.'|head
-1`
IP_A=`echo$IP|awk-F.'{print$1}'`
IP_B=`echo$IP|awk-F.'{print$2}'`
IP_C=`echo$IP|awk-F.'{print$3}'`
IP_D=`echo$IP|awk-F.'{print$4}'`
SERVER_ID=$(($IP_A*256*256*256+$IP_B*256*256+$IP_C*256+$IP_D))
sed-i s/server_id=[0-9]*/server_id=${SERVER_ID}/g my.cnf
本发明的部署脚本在部署服务器上执行,一部分命令通过SSH在目标服务器上远程执行,即在目标服务器上远程调用InnoDB参数修改脚本和server_id参数修改脚本,完成MySQL部署。部署脚本至少有一个目标服务器主机名或IPv4地址的参数,因此,当同时部署多个MySQL时,可以在后台并行执行多个部署脚本,将日志输出到不同文件待后续查看。部署服务器可以与跳板机合用。部署服务器存有MySQL安装部署包,使用scp命令可以将其传输至目标服务器,远程执行命令通过“ssh host command”的语法实现。
综上所述,本发明在官方Linux通用二进制发行版中按照规范事先添加参数文件、数据文件,得到当前环境下的MySQL安装部署包,使用部署服务器通过SSH免登录方式远程完成MySQL部署,从而大大减少了实际部署时所需步骤和时间,满足大规模批量化的部署需求。本发明实施例是基于Linux给出,其他非类UNIX操作系统虽然与Linux存在较大差别,但其中的安装部署方法相似,在此不再一一赘述。此外,本发明注意到server_id与IPv4均相当于4字节存储,基于IPv4计算出数据中心唯一的server_id值,避免了复制死循环的发生。本发明针对数据中心的需求提出了一种规范化、高效率的MySQL部署方法,具体优点如下:1、给MySQL部署给出了必要的规范,统一运行环境,降低运维复杂度。2、提高了MySQL部署效率,能够应对大规模MySQL部署所带来的挑战。3、可行性高。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。
Claims (7)
1.一种MySQL的批量化安装部署方法,其特征在于,包括如下步骤:
a) 获取MySQL二进制发行版,解压得到MySQL主目录及其下的文件;
b)在MySQL主目录下创建参数文件、初始化数据文件并修改帐号,生成适用于当前环境的MySQL安装部署包;
c)配置部署服务器,利用部署服务器将MySQL安装部署包远程传输到目标服务器的指定目录;
d) 所述目标服务器根据接收到的MySQL安装部署包进行配置,完成MySQL安装部署;
所述步骤b)创建的参数文件为my.cnf,所述参数文件包含InnoDB缓存池参数以及server_id参数;所述步骤b) 通过执行scripts/mysql_install_db --defaults-file=my.cnf完成数据目录下数据文件的初始化。
2.如权利要求1所述的MySQL的批量化安装部署方法,其特征在于,所述步骤b)中修改帐号包括:保留三个MySQL的初始用户:root@127.0.0.1、root@::1和root@localhost,并删除掉其他的初始用户。
3.如权利要求1所述的MySQL的批量化安装部署方法,其特征在于,所述步骤b)还包括创建InnoDB缓存池参数修改脚本,使得目标服务器根据当前系统内存大小设定InnoDB缓存池大小以及InnoDB缓存池实例数;所述InnoDB缓存池大小为当前目标服务器的MySQL主目录下/proc/meminfo中读取到的系统内存大小的70%~80%;所述InnoDB缓存池实例数的值根据InnoDB缓存池大小设定,1GB对应一个实例,实例数最多为32个。
4. 如权利要求1所述的MySQL的批量化安装部署方法,其特征在于,所述步骤b)还包括创建server_id参数修改脚本,使得目标服务器获取当前系统的IPv4地址A.B.C.D,并将server_id设置为 A*256*256*256+B*256*256+C*256+D。
5.如权利要求1所述的MySQL的批量化安装部署方法,其特征在于,所述步骤c)中的部署服务器上存储有MySQL安装部署包,所述部署服务器设置SSH免密码登录目标服务器,使用SCP命令将所述MySQL安装部署包传输至目标服务器。
6.如权利要求1所述的MySQL的批量化安装部署方法,其特征在于,所述步骤c)中的部署服务器通过SSH免密码登录方式在目标服务器上远程调用InnoDB缓存池参数修改脚本和server_id参数修改脚本,完成MySQL部署。
7.如权利要求1所述的MySQL的批量化安装部署方法,其特征在于,所述部署服务器与其他业务系统合用一个Linux服务器,一个部署服务器对应多个目标服务器,并可进行并行执行部署。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510581721.0A CN105204897B (zh) | 2015-09-14 | 2015-09-14 | 一种MySQL的批量化安装部署方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510581721.0A CN105204897B (zh) | 2015-09-14 | 2015-09-14 | 一种MySQL的批量化安装部署方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105204897A CN105204897A (zh) | 2015-12-30 |
CN105204897B true CN105204897B (zh) | 2018-09-07 |
Family
ID=54952597
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510581721.0A Active CN105204897B (zh) | 2015-09-14 | 2015-09-14 | 一种MySQL的批量化安装部署方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105204897B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105786564A (zh) * | 2016-02-22 | 2016-07-20 | 上海新炬网络信息技术有限公司 | 一种Oracle的自动化定制安装部署方法 |
CN105867978B (zh) * | 2016-04-11 | 2018-12-11 | 平安科技(深圳)有限公司 | Ogg版本部署方法和系统 |
CN106649430A (zh) * | 2016-08-30 | 2017-05-10 | 广西电网有限责任公司 | 一种SQL Server 一键自动部署方法 |
CN106406856A (zh) * | 2016-08-30 | 2017-02-15 | 广西电网有限责任公司 | 一种Oracle单机一键自动部署方法 |
CN107589982B (zh) * | 2017-09-12 | 2021-01-15 | 国云科技股份有限公司 | 一种虚拟机从VMware迁移到KVM的方法 |
CN109597627A (zh) * | 2017-09-30 | 2019-04-09 | 北京国双科技有限公司 | 一种组件安装方法、装置、存储介质和处理器 |
CN107609202B (zh) * | 2017-10-25 | 2020-08-04 | 武汉斗鱼网络科技有限公司 | 一种部署数据库实例的方法、装置及计算机设备 |
CN110019121B (zh) * | 2017-10-31 | 2021-05-11 | 北京国双科技有限公司 | 一种数据库文件过滤方法、装置、存储介质及处理器 |
CN110708158B (zh) * | 2019-11-06 | 2022-06-10 | 积成电子股份有限公司 | 基于ssh反向隧道技术远程维护充电桩的方法 |
CN112035435B (zh) * | 2020-08-26 | 2024-04-30 | 浪潮云信息技术股份公司 | MySQL主从集群安装部署方法及集群系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103235725A (zh) * | 2013-05-16 | 2013-08-07 | 浪潮通信信息系统有限公司 | 一种基于linux的Oracle数据库在云计算中的快速部署方法 |
CN104809015A (zh) * | 2015-05-05 | 2015-07-29 | 浪潮电子信息产业股份有限公司 | 一种基于Linux系统下的自动部署Oracle rac环境的方法 |
-
2015
- 2015-09-14 CN CN201510581721.0A patent/CN105204897B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103235725A (zh) * | 2013-05-16 | 2013-08-07 | 浪潮通信信息系统有限公司 | 一种基于linux的Oracle数据库在云计算中的快速部署方法 |
CN104809015A (zh) * | 2015-05-05 | 2015-07-29 | 浪潮电子信息产业股份有限公司 | 一种基于Linux系统下的自动部署Oracle rac环境的方法 |
Non-Patent Citations (1)
Title |
---|
《MySQL的自动化安装部署》;Pingyuan921;《https://wenku.baidu.com/view/3ae331c0be1e650e53ea9964.html?from=search》;20150507;第1-3页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105204897A (zh) | 2015-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105204897B (zh) | 一种MySQL的批量化安装部署方法 | |
US11681584B2 (en) | Method and system for interfacing to cloud storage | |
US8200788B2 (en) | Slice server method and apparatus of dispersed digital storage vaults | |
CN102369713B (zh) | 系统配置项的自动迁移方法和设备 | |
US9436566B2 (en) | Methods, systems, and computer readable media for scaling a workload | |
US20140006858A1 (en) | Universal pluggable cloud disaster recovery system | |
CN102413185B (zh) | 基于bt技术的云平台自动升级系统 | |
US20060101059A1 (en) | Employment method, an employment management system and an employment program for business system | |
CN107707625A (zh) | 基于Maven的前台资源打包并进行版本管理与使用的方法 | |
Vaquero et al. | Deploying large-scale datasets on-demand in the cloud: treats and tricks on data distribution | |
US11079960B2 (en) | Object storage system with priority meta object replication | |
CN105022779A (zh) | 一种利用Filesystem API实现HDFS文件存取方法 | |
Orlando et al. | IBM ProtecTIER Implementation and Best Practices Guide | |
US11074002B2 (en) | Object storage system with meta object replication | |
US11093465B2 (en) | Object storage system with versioned meta objects | |
Krishnan et al. | Google cloud SQL | |
CN112286538B (zh) | 一种Greenplum数据库自动化安装方法及装置 | |
Ploetz et al. | Mastering Apache Cassandra 3. x: an expert guide to improving database scalability and availability without compromising performance | |
Das | Distributed File Systems Implementation on an Edge Router using GlusterFS for Cloud Applications | |
KR20230085668A (ko) | 컨테이너 기반 분산 클러스터 환경에서 글로벌 이미지 캐시를 구현하는 시스템 | |
Nikolaidis | Tromos: a software development kit for virtual storage systems | |
Bruzzese | Instant Oracle GoldenGate | |
CN112486939A (zh) | 基于公有云的Moosefs分布式文件存储方法、系统、介质及装置 | |
Plugge et al. | Database Administration | |
Alapati et al. | Installing Cassandra and Getting Started with CQL Shell |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: Qingpu 201707 waiqingsong road Shanghai City, No. 588 Lane 7548 Building 1 R zone 1 room 113 Applicant after: Shanghai new torch network information technology Limited by Share Ltd Address before: 200063 Shanghai, Zhongshan North Road, No. 2000, building, building No. 3, B Applicant before: SHANGHAI XINJU NETWORK INFORMATION TECHNOLOGY CO., LTD. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |