暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

「OceanBase 4.1 体验」|白屏部署 OB集群后实现可视化图形界面效果------从MySQL到OB用户的数据离线同步

原创 angel 2023-05-10
1388

  本文介绍在操作系统 CentOS Linux 7.6 的环境下如何使用 OBD 白屏部署 OceanBase4.1 数据库,以及在OB白屏环境下建立数据库后从MySQL到OB用户的数据离线同步的实现。篇幅稍长,主要是因为我想要记录下每一步的细节,以备后绪再部署时如果忘记了某一步骤,能够查找出问题来,其实步骤没有那么多,我会在最后总结时,总结出关键步骤。
  以前,我在OB黑屏环境下做过OB3.x版本的数据迁移,感兴趣的同学可以查看https://www.modb.pro/db/411540。
  也曾经在OB4.0版本的黑屏环境下做过数据迁移,这是为了查看与OB3.x版本的数据迁移的差距,详情可以查阅https://www.modb.pro/knowledge?id=618401。
  这一次偿试在新版本的OceanBase 4.1白屏OCP Express环境下创建数据库。

一、OB4.1白屏的安装以及集群的实现

0.安装环境:

image.png

1.OB4.1下载、解压:

  从 OceanBase 软件下载中心下载最新的 all-in-one 安装包,之后解压。
[angel@localhost ~]$ tar -xzf 20230424/oceanbase-all-in-one-*.tar.gz

image.png

[angel@localhost ~]$ tar -xzf 20230424/oceanbase-all-in-one-*.tar.gz [angel@localhost ~]$ cd oceanbase-all-in-one/bin/ [angel@localhost bin]$

2.安装:

[angel@localhost bin]$ ./install.sh

image.png

[angel@localhost bin]$ ./install.sh name: grafana version: 7.5.17 release:1 arch: x86_64 md5: 1bf1f338d3a3445d8599dc6902e7aeed4de4e0d6 add /home/angel/oceanbase-all-in-one/rpms/grafana-7.5.17-1.el7.x86_64.rpm to local mirror name: obagent version: 1.2.0 release:4.el7 arch: x86_64 md5: 0e8f5ee68c337ea28514c9f3f820ea546227fa7e add /home/angel/oceanbase-all-in-one/rpms/obagent-1.2.0-4.el7.x86_64.rpm to local mirror name: obagent version: 1.3.0 release:22.el7 arch: x86_64 md5: d57fbb4962b2fbecb6282358c59295fdfba4d6ac add /home/angel/oceanbase-all-in-one/rpms/obagent-1.3.0-22.el7.x86_64.rpm to local mirror name: obproxy-ce version: 4.0.0 release:5.el7 arch: x86_64 md5: de53232a951184fad75b15884458d85e31d2f6c3 add /home/angel/oceanbase-all-in-one/rpms/obproxy-ce-4.0.0-5.el7.x86_64.rpm to local mirror name: obproxy-ce version: 4.1.0.0 release:7.el7 arch: x86_64 md5: 2a9d9bf67f179dcca2a8c9e7c77373d94e7e2abe add /home/angel/oceanbase-all-in-one/rpms/obproxy-ce-4.1.0.0-7.el7.x86_64.rpm to local mirror name: oceanbase-ce version: 4.0.0.0 release:100000272022110114.el7 arch: x86_64 md5: 42611dc51ca9bb28f36e60e4406ceea4a74914c7 add /home/angel/oceanbase-all-in-one/rpms/oceanbase-ce-4.0.0.0-100000272022110114.el7.x86_64.rpm to local mirror name: oceanbase-ce version: 4.1.0.0 release:100000192023032010.el7 arch: x86_64 md5: 8439ecf8db5e0649bd49671b41ea9e8c85756b63 add /home/angel/oceanbase-all-in-one/rpms/oceanbase-ce-4.1.0.0-100000192023032010.el7.x86_64.rpm to local mirror name: oceanbase-ce-libs version: 4.0.0.0 release:100000272022110114.el7 arch: x86_64 md5: 188919f8128394bf9b62e3989220ded05f1d14da add /home/angel/oceanbase-all-in-one/rpms/oceanbase-ce-libs-4.0.0.0-100000272022110114.el7.x86_64.rpm to local mirror name: oceanbase-ce-libs version: 4.1.0.0 release:100000192023032010.el7 arch: x86_64 md5: a83b1dd1cab44d3f610d439931322be7a08555f2 add /home/angel/oceanbase-all-in-one/rpms/oceanbase-ce-libs-4.1.0.0-100000192023032010.el7.x86_64.rpm to local mirror name: ocp-express version: 1.0.0 release:100000432023032015.el7 arch: x86_64 md5: 42c6fc921063f24f9e1072d75bfa7f21f42146e3 add /home/angel/oceanbase-all-in-one/rpms/ocp-express-1.0.0-100000432023032015.el7.x86_64.rpm to local mirror name: prometheus version: 2.37.1 release:10000102022110211.el7 arch: x86_64 md5: 58913c7606f05feb01bc1c6410346e5fc31cf263 add /home/angel/oceanbase-all-in-one/rpms/prometheus-2.37.1-10000102022110211.el7.x86_64.rpm to local mirror Trace ID: 05aa69dc-e274-11ed-8e6c-5254007e899f If you want to view detailed obd logs, please run: obd display-trace 05aa69dc-e274-11ed-8e6c-5254007e899f Disable remote ok Trace ID: 06868e94-e274-11ed-8d54-5254007e899f If you want to view detailed obd logs, please run: obd display-trace 06868e94-e274-11ed-8d54-5254007e899f add auto set env logic to profile: /home/angel/.bash_profile ##################################################################### Install Finished ===================================================================== Setup Environment: source ~/.oceanbase-all-in-one/bin/env.sh Start Web Service: obd web Quick Start: obd demo More Details: obd -h ===================================================================== [angel@localhost bin]$

3.获取白屏地址:

  输入启动白屏命令后获取启动白屏的地址。

[angel@localhost bin]$ obd web

image.png

[angel@localhost bin]$ obd web start OBD WEB in 0.0.0.0:8680 please open http://127.0.0.1:8680

4.启动白屏界面:

  在浏览器输入启动白屏地址:

http://127.0.0.1:8680

  白屏界面如下:

image.png

  点击开启体验之旅,进入集群部署步骤。

5.集群部署:

  第一步:进入部署配置界面

image.png

   首先定义一个集群名称,点击完全部署,选择下一步

  第二步:节点配置
  在这一步骤里,可以根据需要设置zone的名称和节点IP,由于作者是离线部署,所以选择单机节点,IP:127.0.0.1,删除其余节点。在组件节点配置项OCP Express和OBProxy自动输入同样的IP地址。输入用户名和密码,软件路径自动填充,选择下一步

image.png

  第三步:集群配置
  在模式配置中,可以根据自己的实际资源情况设置,由于作者的资源充裕,所以选择最大占用。密码设置规则如下:

仅支持英文、数字和特殊字符(~!@#%^&*_-+=|(){}[]:;,.?/),长度在 8-32 个字符之内

  因为怕忘记密码,所以选择最简单的密码。如果资源有限可以选择数据目录和日志目录,否则选择默认,选择下一步

image.png

  第四步:预检查

image.png

  第五步:部署
  查看各个参数是否有错误。如果有错误可以返回上一步修改,如果没有错误,点击部署

image.png

  正在部署中。

image.png

  部署进行中。

image.png

  部署成功。

image.png

  部署成功后复制信息,避免再次登录时忘记登录名和密码。

[{"component":"oceanbase-ce","access_url":"127.0.0.1:2881","user":"root","password":"12345678","connect_url":"obclient -h127.0.0.1 -P2881 -uroot -p'12345678' -Doceanbase -A"}, {"component":"obproxy-ce","access_url":"127.0.0.1:2883","user":"root","password":"12345678","connect_url":"obclient -h127.0.0.1 -P2883 -uroot -p'12345678' -Doceanbase -A"}, {"component":"ocp-express","access_url":"127.0.0.1:8180","user":"admin","password":"oceanbase","connect_url":"http://127.0.0.1:8180"}]

  退出前系统会再一次提醒,退出前,请确保已复制访问地址和帐密信息

image.png

image.png

二、通过ocp-express设置资源规格、增加租户及创建数据库

1.修改ocp占用资源:

  在浏览器地址栏输入地址:127.0.0.1:8180登录ocp-express。

image.png

  初始帐号和密码:“user”:“admin”,“password”:“oceanbase”。进入后需要更改密码,规则如下:

至少包含 2 位数字、2 位大写字母、2 位小写字母和 2 位特殊字符 (._+@#$%),长度 8~32 位字符.

image.png

image.png

  进入租户管理,找到OCP,进入后首先需要修改密码,是普通密码限制,修改后没有保存密码,就退出了,我害怕密码太多忘记了。

image.png

  修改OCP占用CPU的核数从1改为2,内存占用大小从2增加至10GB。

image.png

  修改成功。

image.png

  退出时直接进入诊断分析页面,显示修改租户副本的详细信息,包括日志和流转视图。

image.png

2.增加租户

  在租户管理界面选择新建租户。

image.png

  进入创建租户详情界面。

image.png

  租户管理界面密码限制规则如下:

长度为 8~32 个字符 只能包含字母、数字和特殊字符(~!@#%^&*_-+=|(){}[]:;,.?/) 大小写字母、数字和特殊字符都至少包含 2 个

image.png

  这一步骤页面太长,分为两个图片,这是上半部分,设置新租户lxs_tenant,资源规格的核数是1,占用内存为2。

image.png

  这是下半部分,设置访问白名单:127.0.0.1。

image.png

  新建租户任务提交成功。

image.png

  刷新后的租户列表如下。

image.png

  下面来到lxs_tenant租户总览界面。

image.png

3.建立数据库

  在数据库管理菜单,显示当前数据库列表。

image.png

  在创建数据库菜单里,填写数据库名:lxs_db,然后提交。

image.png

  返回数据库管理界面,看到新的数据库lxs_db已经生成。

image.png

三、数据库迁移

  文章开篇提到,我以前做过MySQL的数据迁移,详情开篇时有链接,其中表结构和数据已经从MySQL的数据库中迁移到了如下目录:

image.png

[angel@localhost ~]$ ll *.sql -rw-rw-r--. 1 angel angel 1421 3月 18 01:55 table_20230301_data.sql -rw-rw-r--. 1 angel angel 344 3月 18 01:54 table_20230301_ddl.sql [angel@localhost ~]$ pwd

  现在将这个MySQL数据库中的表结构和数据迁移到OB4.1白屏化界面下建立的数据库lxs_db中。

1.打开OB黑屏界面数据库

  在白屏OB云平台的lxs_tenant租户总览界面找到租户连接字符串
复制租户连接字符串的地址:

mysql -h127.0.0.1 -P2881 -uroot@lxs_tenant -p

image.png

  到黑屏界面,并粘贴到命令行后回车。

image.png

[angel@localhost ~]$ mysql -h127.0.0.1 -P2881 -uroot@lxs_tenant -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MySQL connection id is 3221502153 Server version: 5.7.25 OceanBase_CE 4.1.0.0 (r100000192023032010-0265dfc6d00ff4f0ff4ad2710504a18962abaef6) (Built Mar 20 2023 10:12:57) Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MySQL [(none)]>

2.查看数据库列表

show databases;

image.png

MySQL [(none)]> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | lxs_db | | mysql | | oceanbase | | test | +--------------------+ 5 rows in set (0.45 sec) MySQL [(none)]>

3.打开数据库:

use lxs_db;

image.png

MySQL [(none)]> use lxs_db; Database changed MySQL [lxs_db]>

4.导入表结构:

source /home/angel/table_20230301_ddl.sql

image.png

MySQL [lxs_db]> source /home/angel/table_20230301_ddl.sql Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected, 1 warning (0.08 sec) Query OK, 0 rows affected (0.00 sec) MySQL [lxs_db]>

  表结构导入成功。

5.导入数据:

source /home/angel/table_20230301_data.sql

image.png

MySQL [lxs_db]> source /home/angel/table_20230301_data.sql Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 2 rows affected (0.01 sec) Records: 2 Duplicates: 0 Warnings: 0 Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) MySQL [lxs_db]>

  数据导入成功。

6.查询数据库中的表:

show tables;

image.png

MySQL [lxs_db]> show tables; +------------------+ | Tables_in_lxs_db | +------------------+ | table_20230301 | +------------------+ 1 row in set (0.00 sec)

7.查询表中的数据:

select * from table_20230301;

image.png

MySQL [lxs_db]> select * from table_20230301; +----+-------+ | id | name | +----+-------+ | 1 | angel | | 2 | alice | +----+-------+ 2 rows in set (0.00 sec) MySQL [lxs_db]>

  至此,能够证明,通过OB4.1白屏ocp-express云平台建立的数据库与在OB4.0及3.X版本建立的数据库从MySQL数据库中导入的表结构和数据的结果是完全相同的。同时,OB4.0相较于3.x版本部署时容易了很多,OB4.1的白屏效果又较OB4.0节省了很多步骤。

总结:

1.白屏安装步骤:

①.从官网下载最新软件安装包,解压并安装后获取白屏网址。
②.进入白屏后首先需要部署集群,然后复制部署信息,以防忘记登录名和密码。
③.部署集群后需要进入ocp-express云平台设置资源规格、增加租户及创建数据库。
④.最后复制租户连接字符串的地址,以备黑屏下使用。

2.白屏安装优点:

①.资源规格,资源池的设置简单了许多,只要求填写资源单元的核数和占用内存的大小就可以了,资源池的设置我没有看到,iops的设置也省略了。
②.租户的密码安全级别提高了,从以前的任意设置到现在的高强度级别。
③.可视化效果增强了,方便查阅。
④.数据和图形化界面能达到一目了然的效果。

感谢:

  最后感谢在我遇到困难时为我提供帮助的老师和同学们!本文还有很多错误和不足之处,欢迎老师和同学们批评指正!

最后修改时间:2023-05-10 11:31:59
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论