「OceanBase 4.1 体验」OceanBase 4.1社区版的部署及使用体验
「OceanBase 4.1 体验」OceanBase 4.1社区版的部署及使用体验
- 一、前言
- 1.1 本次实践介绍
- 1.2 本次实践目的
- 二、准备环境资源
- 2.1 部署前需准备工作
- 2.2 本地环境规划
- 三、部署Docker环境
- 3.1 安装Docker
- 3.2 配置Docker镜像加速
- 3.3 开启路由转发
- 3.4 重启Docker服务
- 四、检查本地Docker环境
- 4.1 检查docker版本
- 4.2 检查Docker服务
- 4.3 检查磁盘大小
- 4.4 检查内存大小
- 4.5 检查cpu核数
- 4.6 检查2881端口
- 五、部署OceanBase 4.1社区版
- 5.1 下载OceanBase 4.1镜像
- 5.2 创建OceanBase容器
- 5.3 检查OceanBase容器状态
- 5.4 检查OceanBase容器的运行日志
- 六、连接到 OceanBase 实例
- 6.1 连接sys租户的root 用户
- 6.2 连接test租户root用户
- 6.3 连接test租户的test用户
- 6.4 创建wordpress数据库
- 6.5 在test租户下创建用户
- 6.6 连接test租户下admin用户
- 6.7 使用mysql客户端连接
- 七、在OceanBase数据库创建数据表
- 7.1 使用mysql客户端连接OceanBase
- 7.2 创建数据库
- 7.3 进入数据库内
- 7.4 新建数据表
- 7.5 写入数据
- 7.6 查看数据表内容
- 八、使用DBeaver连接OceanBase 4.1社区版
- 8.1 打开DBeaver软件
- 8.2 选择连接数据库类型
- 8.3 填写数据库连接信息
- 8.4 测试连接及下载相关驱动
- 8.5 查看数据表内容
一、前言
1.1 本次实践介绍
本次部署OceanBase 4.1社区版采用的是使docker单机快速部署方式,使用的是dockerhub中oceanbase/oceanbase-ce镜像,版本为4.1.0.0版本。该镜像仅供学习或测试使用,可以快速部署一个MINI_MODE OceanBase数据库实例,极大的提高了部署速度,方便快捷。
1.2 本次实践目的
1.本次实践环境为个人测试环境,生产环境请根据官方文档指导部署;
2.本次OceanBase 4.1社区版部署为docker单机快速部署方式;
3.体验OceanBase 4.1社区版的部署及基本使用;
二、准备环境资源
2.1 部署前需准备工作
- 确保机器已经部署docker环境
- Docker服务状态运行正常
- 宿主机2881端口没有被占用
- 防火墙已放行2881端口
- 确保宿主机内存大于8G
- 宿主机cpu内核总数大于2
- 宿主机磁盘空间大于54G
2.2 本地环境规划
本次实践的个人环境规划如下,已经部署好docker环境,使用的是一台在PVE虚拟化平台的虚拟机作为实践环境。
hostname | IP地址 | docker版本 | 操作系统版本 | CPU核数 | 内存 | 硬盘 | 虚拟化平台 | 服务器类型 | OceanBase版本 |
---|---|---|---|---|---|---|---|---|---|
docker | 192.168.3.127 | 23.0.5 | centos 7.6 | 6 | 12G | 500G | PVE虚拟化平台 | 虚拟机 | OceanBase 4.1社区版 |
三、部署Docker环境
3.1 安装Docker
执行以下两条命令,使用docker快速安装脚本,一键快速部署docker。
curl -fsSL get.docker.com -o get-docker.sh
sh get-docker.sh --mirror Aliyun
启动Docker服务,并设置开机自启。
systemctl --now enbale docker
3.2 配置Docker镜像加速
修改/etc/docker/daemon.json文件,配置Docker镜像加速。
echo '{ "registry-mirrors": ["https://sp4mg57h.mirror.aliyuncs.com"] }' > /etc/docker/daemon.json
3.3 开启路由转发
开启路由转发,并重启网络服务。
[root@docker ~]# echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
[root@docker ~]# systemctl restart network
[root@docker ~]# sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1
3.4 重启Docker服务
重启Docker服务。
systemctl daemon-reload && systemctl restart docker
四、检查本地Docker环境
4.1 检查docker版本
检查本机安装的docker版本
[root@docker ~]# docker -v
Docker version 23.0.5, build bc4487a
4.2 检查Docker服务
检查本机的docker服务状态
[root@docker ~]# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)Active: active (running) since Thu 2023-04-27 15:40:54 CST; 24min agoDocs: https://docs.docker.comMain PID: 5092 (dockerd)Tasks: 12Memory: 549.2MCGroup: /system.slice/docker.service└─5092 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
4.3 检查磁盘大小
检查docker宿主机的磁盘大小,确保满足部署要求。
[root@docker ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda6 360G 26G 334G 8% /
devtmpfs 5.8G 0 5.8G 0% /dev
tmpfs 5.8G 0 5.8G 0% /dev/shm
tmpfs 5.8G 8.6M 5.8G 1% /run
tmpfs 5.8G 0 5.8G 0% /sys/fs/cgroup
/dev/sda2 100G 33M 100G 1% /home
/dev/sda3 20G 3.0G 18G 15% /var
/dev/sda1 12G 137M 12G 2% /boot
overlay 20G 3.0G 18G 15% /var/lib/docker/overlay2/c493da6000055915b42d2bec2e169c522122ecd9559a92f1f41f104dd4508b25/merged
tmpfs 1.2G 0 1.2G 0% /run/user/0
[root@docker ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 500G 0 disk
├─sda1 8:1 0 12G 0 part /boot
├─sda2 8:2 0 100G 0 part /home
├─sda3 8:3 0 20G 0 part /var
├─sda4 8:4 0 1K 0 part
├─sda5 8:5 0 8G 0 part [SWAP]
└─sda6 8:6 0 360G 0 part /
sr0 11:0 1 4.3G 0 rom
4.4 检查内存大小
检查docker宿主机的内存大小,确保满足部署要求。
[root@docker ~]# free -mtotal used free shared buff/cache available
Mem: 11852 5537 345 8 5970 5878
Swap: 8191 7 8184
4.5 检查cpu核数
检查cpu的核心数,确保大于2核。
[root@docker ~]# cat /proc/cpuinfo| grep "cpu cores"| uniq
cpu cores : 6
4.6 检查2881端口
检查2881端口是否被占用,确保没有服务占用2881端口。
ss -tunlp |grep 2881
检查防火墙是否放行2881端口
[root@docker ~]# firewall-cmd --list-ports
2881/tcp
如果防火墙未放行2881端口,则执行以下放行命令:
[root@docker ~]# firewall-cmd --permanent --add-port=2881/tcp
success
[root@docker ~]# firewall-cmd --reload
success
五、部署OceanBase 4.1社区版
5.1 下载OceanBase 4.1镜像
在dockerhub下载oceanbase/oceanbase-ce:4.1.0.0容器镜像
[root@docker ~]# docker pull oceanbase/oceanbase-ce:4.1.0.0
4.1.0.0: Pulling from oceanbase/oceanbase-ce
2d473b07cdd5: Pull complete
c21cdfe7a94b: Pull complete
7433dd4c409c: Pull complete
00a0e26f2005: Pull complete
Digest: sha256:18c4055f80ec312fc618ef6356ba0da6379c93c45a01b1b5af46e4667c327135
Status: Downloaded newer image for oceanbase/oceanbase-ce:4.1.0.0
docker.io/oceanbase/oceanbase-ce:4.1.0.0
5.2 创建OceanBase容器
创建容器挂载目录/data/ob.
mkdir -p /data/ob/ && mkdir -p /data/obd/
在本地系统环境,创建一个OceanBase容器。
docker run -d -p 2881:2881 -v /data/ob:/root/ob -v /data/obd:/root/.obd --name oceanbase oceanbase/oceanbase-ce:4.1.0.0
5.3 检查OceanBase容器状态
检查OceanBase容器状态,查看容器是否正常启动。
[root@docker data]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
32d28cd6b407 oceanbase/oceanbase-ce:4.1.0.0 "/bin/sh -c _boot" 9 minutes ago Up 9 minutes 0.0.0.0:2881->2881/tcp, :::2881->2881/tcp oceanbase
5.4 检查OceanBase容器的运行日志
查看OceanBase容器的运行日志,确保OceanBase服务正常运行。
[root@docker data]# docker logs oceanbase
generate boot.yaml ...
oceanbase-ce docker in mini mode
create boot dirs and deploy ob cluster ...
name: obagent
version: 1.3.0
release:22.el7
arch: x86_64
md5: d57fbb4962b2fbecb6282358c59295fdfba4d6ac
add /root/pkg/obagent-1.3.0-22.el7.x86_64.rpm to local mirror
name: oceanbase-ce
version: 4.1.0.0
release:100000192023032010.el7
arch: x86_64
md5: 8439ecf8db5e0649bd49671b41ea9e8c85756b63
add /root/pkg/oceanbase-ce-4.1.0.0-100000192023032010.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 /root/pkg/oceanbase-ce-libs-4.1.0.0-100000192023032010.el7.x86_64.rpm to local mirror
Trace ID: 5b38756a-e4d6-11ed-a300-0242ac110002
If you want to view detailed obd logs, please run: obd display-trace 5b38756a-e4d6-11ed-a300-0242ac110002
+----------------------------------------------------------------------------------------------------------+
| local Package List |
+-------------------+---------+------------------------+--------+------------------------------------------+
| name | version | release | arch | md5 |
+-------------------+---------+------------------------+--------+------------------------------------------+
| obagent | 1.3.0 | 22.el7 | x86_64 | d57fbb4962b2fbecb6282358c59295fdfba4d6ac |
| oceanbase-ce | 4.1.0.0 | 100000192023032010.el7 | x86_64 | 8439ecf8db5e0649bd49671b41ea9e8c85756b63 |
| oceanbase-ce-libs | 4.1.0.0 | 100000192023032010.el7 | x86_64 | a83b1dd1cab44d3f610d439931322be7a08555f2 |
+-------------------+---------+------------------------+--------+------------------------------------------+
Trace ID: 5bb1765e-e4d6-11ed-b7d4-0242ac110002
If you want to view detailed obd logs, please run: obd display-trace 5bb1765e-e4d6-11ed-b7d4-0242ac110002
Local deploy is empty
Trace ID: 5c25bab4-e4d6-11ed-8844-0242ac110002
If you want to view detailed obd logs, please run: obd display-trace 5c25bab4-e4d6-11ed-8844-0242ac110002
Dev Mode: ON
Trace ID: 5dd12ede-e4d6-11ed-88c3-0242ac110002
If you want to view detailed obd logs, please run: obd display-trace 5dd12ede-e4d6-11ed-88c3-0242ac110002
Package oceanbase-ce-4.1.0.0-100000192023032010.el7 is available.
Package obagent-1.3.0-22.el7 is available.
install oceanbase-ce-4.1.0.0 for local ok
install obagent-1.3.0 for local ok
Cluster param config check ok
Open ssh connection ok
Generate observer configuration ok
Generate obagent configuration ok
+--------------------------------------------------------------------------------------------+
| Packages |
+--------------+---------+------------------------+------------------------------------------+
| Repository | Version | Release | Md5 |
+--------------+---------+------------------------+------------------------------------------+
| oceanbase-ce | 4.1.0.0 | 100000192023032010.el7 | 8439ecf8db5e0649bd49671b41ea9e8c85756b63 |
| obagent | 1.3.0 | 22.el7 | d57fbb4962b2fbecb6282358c59295fdfba4d6ac |
+--------------+---------+------------------------+------------------------------------------+
Repository integrity check ok
Parameter check ok
Open ssh connection ok
Cluster status check ok
Initializes observer work home ok
Initializes obagent work home ok
Remote oceanbase-ce-4.1.0.0-100000192023032010.el7-8439ecf8db5e0649bd49671b41ea9e8c85756b63 repository install ok
Remote oceanbase-ce-4.1.0.0-100000192023032010.el7-8439ecf8db5e0649bd49671b41ea9e8c85756b63 repository lib check !!
Remote obagent-1.3.0-22.el7-d57fbb4962b2fbecb6282358c59295fdfba4d6ac repository install ok
Remote obagent-1.3.0-22.el7-d57fbb4962b2fbecb6282358c59295fdfba4d6ac repository lib check ok
Try to get lib-repository
Package oceanbase-ce-libs-4.1.0.0-100000192023032010.el7 is available.
install oceanbase-ce-libs-4.1.0.0 for local ok
Remote oceanbase-ce-libs-4.1.0.0-100000192023032010.el7-a83b1dd1cab44d3f610d439931322be7a08555f2 repository install ok
Remote oceanbase-ce-4.1.0.0-100000192023032010.el7-8439ecf8db5e0649bd49671b41ea9e8c85756b63 repository lib check ok
obcluster deployed
Get local repositories ok
Search plugins ok
Open ssh connection ok
Load cluster param plugin ok
Check before start observer ok
[WARN] OBD-1011: (127.0.0.1) The recommended value of fs.aio-max-nr is 1048576 (Current value: 65536)
[WARN] OBD-1007: (127.0.0.1) The recommended number of open files is 655350 (Current value: 65536)
[WARN] OBD-1012: (127.0.0.1) clog and data use the same disk (/root/ob)Check before start obagent ok
Start observer ok
observer program health check ok
Connect to observer ok
Initialize oceanbase-ce ok
Start obagent ok
obagent program health check ok
Connect to Obagent ok
Wait for observer init ok
+---------------------------------------------+
| observer |
+-----------+---------+------+-------+--------+
| ip | version | port | zone | status |
+-----------+---------+------+-------+--------+
| 127.0.0.1 | 4.1.0.0 | 2881 | zone1 | ACTIVE |
+-----------+---------+------+-------+--------+
obclient -h127.0.0.1 -P2881 -uroot -Doceanbase -A+---------------------------------------------------------------+
| obagent |
+------------+--------------------+--------------------+--------+
| ip | mgragent_http_port | monagent_http_port | status |
+------------+--------------------+--------------------+--------+
| 172.17.0.2 | 8089 | 8088 | active |
+------------+--------------------+--------------------+--------+
obcluster running
Trace ID: 5e3444ba-e4d6-11ed-a7b1-0242ac110002
If you want to view detailed obd logs, please run: obd display-trace 5e3444ba-e4d6-11ed-a7b1-0242ac110002
Get local repositories and plugins ok
Open ssh connection ok
Connect to observer ok
Create tenant test ok
Trace ID: d3706e3e-e4d6-11ed-82e4-0242ac110002
If you want to view detailed obd logs, please run: obd display-trace d3706e3e-e4d6-11ed-82e4-0242ac110002
deploy success!
boot success!
直接通过以下命令查看最后的安装结果,出现boot success就表示部署成功。
[root@docker data]# docker logs oceanbase | tail -1
boot success!
六、连接到 OceanBase 实例
6.1 连接sys租户的root 用户
连接sys租户的root 用户
[root@docker data]# docker exec -it oceanbase ob-mysql sys
login as root@sys
Command is: obclient -h127.1 -uroot@sys -A -Doceanbase -P2881
Welcome to the OceanBase. Commands end with ; or \g.
Your OceanBase connection id is 3221487689
Server version: OceanBase_CE 4.1.0.0 (r100000192023032010-0265dfc6d00ff4f0ff4ad2710504a18962abaef6) (Built Mar 20 2023 10:12:57)Copyright (c) 2000, 2018, OceanBase and/or its affiliates. All rights reserved.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.obclient [oceanbase]>
6.2 连接test租户root用户
连接test租户root用户
[root@docker data]# docker exec -it oceanbase ob-mysql root
login as root@test
Command is: obclient -h127.1 -uroot@test -A -Doceanbase -P2881
Welcome to the OceanBase. Commands end with ; or \g.
Your OceanBase connection id is 3221487695
Server version: OceanBase_CE 4.1.0.0 (r100000192023032010-0265dfc6d00ff4f0ff4ad2710504a18962abaef6) (Built Mar 20 2023 10:12:57)Copyright (c) 2000, 2018, OceanBase and/or its affiliates. All rights reserved.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.obclient [oceanbase]>
6.3 连接test租户的test用户
连接test租户的test用户
[root@docker data]# docker exec -it oceanbase ob-mysql test
login as test@test
Command is: obclient -h127.1 -utest@test -A -Dtest -P2881
Welcome to the OceanBase. Commands end with ; or \g.
Your OceanBase connection id is 3221487706
Server version: OceanBase_CE 4.1.0.0 (r100000192023032010-0265dfc6d00ff4f0ff4ad2710504a18962abaef6) (Built Mar 20 2023 10:12:57)Copyright (c) 2000, 2018, OceanBase and/or its affiliates. All rights reserved.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.obclient [test]>
6.4 创建wordpress数据库
在 root@root用户权限下,新建wordpress数据库。
[root@docker ~]# docker exec -it oceanbase ob-mysql root
login as root@test
Command is: obclient -h127.1 -uroot@test -A -Doceanbase -P2881
Welcome to the OceanBase. Commands end with ; or \g.
Your OceanBase connection id is 3221487904
Server version: OceanBase_CE 4.1.0.0 (r100000192023032010-0265dfc6d00ff4f0ff4ad2710504a18962abaef6) (Built Mar 20 2023 10:12:57)Copyright (c) 2000, 2018, OceanBase and/or its affiliates. All rights reserved.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.obclient [oceanbase]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| oceanbase |
| test |
+--------------------+
4 rows in set (0.496 sec)obclient [oceanbase]> create database wordpress;
Query OK, 1 row affected (5.961 sec)obclient [oceanbase]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| oceanbase |
| test |
| wordpress |
+--------------------+
5 rows in set (0.604 sec)
6.5 在test租户下创建用户
使用test租户下的root用户连接OceanBase数据库,创建admin@test用户。
[root@docker ~]# docker exec -it oceanbase ob-mysql root
login as root@test
Command is: obclient -h127.1 -uroot@test -A -Doceanbase -P2881
Welcome to the OceanBase. Commands end with ; or \g.
Your OceanBase connection id is 3221487913
Server version: OceanBase_CE 4.1.0.0 (r100000192023032010-0265dfc6d00ff4f0ff4ad2710504a18962abaef6) (Built Mar 20 2023 10:12:57)Copyright (c) 2000, 2018, OceanBase and/or its affiliates. All rights reserved.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.obclient [oceanbase]> create user admin identified by "admin123";
Query OK, 0 rows affected (1.590 sec)obclient [oceanbase]> GRANT ALL ON wordpress.* TO admin with GRANT OPTION;
Query OK, 0 rows affected (0.764 sec)
6.6 连接test租户下admin用户
进入OceanBase容器内
[root@docker ~]# docker exec -it oceanbase /bin/bash
[root@32d28cd6b407 ~]#
测试连接test租户下admin用户
[root@32d28cd6b407 ~]# obclient -h127.1 -uadmin@test -A -Dwordpress -P2881 -padmin123
Welcome to the OceanBase. Commands end with ; or \g.
Your OceanBase connection id is 3221487933
Server version: OceanBase_CE 4.1.0.0 (r100000192023032010-0265dfc6d00ff4f0ff4ad2710504a18962abaef6) (Built Mar 20 2023 10:12:57)Copyright (c) 2000, 2018, OceanBase and/or its affiliates. All rights reserved.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.obclient [wordpress]>
6.7 使用mysql客户端连接
在局域网内一台mysql客户端,连接test租户下admin用户
[root@server ~]# mysql -h 192.168.3.127 -P 2881 -u admin@test -padmin123 -D wordpress -Ac --prompt "OceanBase(\u@\d)> "
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3221487997
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 and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.OceanBase(admin@wordpress)>
七、在OceanBase数据库创建数据表
7.1 使用mysql客户端连接OceanBase
使用mysql客户端远程连接OceanBase数据库
[root@server ~]# mysql -h 192.168.3.127 -P 2881 -u admin@test -padmin123 -Ac --prompt "OceanBase(\u@\d)> "
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3221488894
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 and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.OceanBase(admin@(none))> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| oceanbase |
| test |
| wordpress |
| wordpress_db |
+--------------------+
6 rows in set (0.37 sec)OceanBase(admin@(none))>
7.2 创建数据库
在OceanBase内创建一个数据库school
OceanBase(admin@(none))> create database school;
Query OK, 1 row affected (0.44 sec)OceanBase(admin@(none))> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| oceanbase |
| school |
| test |
| wordpress |
| wordpress_db |
+--------------------+
7 rows in set (0.35 sec)OceanBase(admin@(none))>
7.3 进入数据库内
进入新创建的school数据库内
OceanBase(admin@(none))> use school;
Database changed
OceanBase(admin@school)> show tables;
Empty set (0.00 sec)OceanBase(admin@school)>
7.4 新建数据表
创建一个空数据表
CREATE TABLE IF NOT EXISTS `student`(`id` INT UNSIGNED AUTO_INCREMENT,`name` VARCHAR(100) NOT NULL,`gender` TINYINT NOT NULL,`age` INT UNSIGNED,`class` INT UNSIGNED,`score` INT UNSIGNED,PRIMARY KEY ( `id` ))ENGINE=InnoDB DEFAULT CHARSET=utf8;
7.5 写入数据
向数据表student写入数据。
OceanBase(admin@school)> insert into student ( name, gender, age, class, score ) values ( "李萌萌", "0", "17", "3", "98" );
Query OK, 1 row affected (1.30 sec)OceanBase(admin@school)> insert into student ( name, gender, age, class, score ) values ( "王依依", "0", "14", "2", "68" );
Query OK, 1 row affected (0.57 sec)OceanBase(admin@school)> insert into student ( name, gender, age, class, score ) values ( "张强", "1", "17", "3", "78" );
Query OK, 1 row affected (0.21 sec)
7.6 查看数据表内容
查看数据表内容
OceanBase(admin@school)> select * from student;
+----+-----------+--------+------+-------+-------+
| id | name | gender | age | class | score |
+----+-----------+--------+------+-------+-------+
| 1 | 李萌萌 | 0 | 17 | 3 | 98 |
| 2 | 王依依 | 0 | 14 | 2 | 68 |
| 3 | 张强 | 1 | 17 | 3 | 78 |
+----+-----------+--------+------+-------+-------+
3 rows in set (0.01 sec)
八、使用DBeaver连接OceanBase 4.1社区版
8.1 打开DBeaver软件
打开本地DBeaver软件
8.2 选择连接数据库类型
选择连接的数据库为OceanBase
8.3 填写数据库连接信息
数据库连接信息如下:
host: 192.168.3.127
port: 2881
database: school
Tenant: test
用户名:admin
密码:admin123
8.4 测试连接及下载相关驱动
点击测试连接选项,自动下载驱动程序,测试连接正常。
8.5 查看数据表内容
查看OceanBase中student数据表内容。
相关文章:

「OceanBase 4.1 体验」OceanBase 4.1社区版的部署及使用体验
「OceanBase 4.1 体验」OceanBase 4.1社区版的部署及使用体验 一、前言1.1 本次实践介绍1.2 本次实践目的 二、准备环境资源2.1 部署前需准备工作2.2 本地环境规划 三、部署Docker环境3.1 安装Docker3.2 配置Docker镜像加速3.3 开启路由转发3.4 重启Docker服务 四、检查本地Doc…...

计算机操作系统实验:银行家算法模拟
目录 前言实验目的实验内容实验原理实验过程代码如下代码详解算法过程运行结果 总结 前言 本文是计算机操作系统实验的一部分,主要介绍了银行家算法的原理和实现。银行家算法是一种用于解决多个进程对多种资源的竞争和分配的算法,它可以避免死锁和资源浪…...

机器学习:多项式拟合分析中国温度变化与温室气体排放量的时序数据
文章目录 1、前言2、定义及公式3、案例代码1、数据解析2、绘制散点图3、多项式回归、拟合4、注意事项 1、前言 当分析数据时,如果我们找的不是直线或者超平面,而是一条曲线,那么就可以用多项式回归来分析和预测。 2、定义及公式 多项…...

一个 24 通道 100Msps 逻辑分析仪
这是一个创建非常便宜的逻辑分析仪的项目,但其功能可与昂贵的商业分析仪相媲美。该分析仪可以以每秒 1 亿个样本的最高速度对多达 24 个通道进行采样,并且可以通过单个通道中的极性变化或多达 16 个通道形成的模式来触发。 该项目不仅包含硬件࿰…...
使用Process Explorer和Dependency Walker排查C++程序中dll库动态加载失败问题
目录 1、exe主程序启动时的库加载流程说明 2、加载dll库两种方式 2.1、dll库的隐式引用...

网工Python:如何使用Netmiko的SCP函数进行文件传输?
在网络设备管理中,传输配置文件、镜像文件等是经常需要进行的操作。Netmiko是一个Python库,可用于与各种网络设备进行交互,提供了一些用于传输文件的函数,其中包括SCP(Secure Copy Protocol)函数。本文将介…...

题目 3166: 蓝桥杯2023年第十四届省赛真题-阶乘的和--不能完全通过,最好情况通过67.
原题链接: 题目 3166: 蓝桥杯2023年第十四届省赛真题-阶乘的和 https://www.dotcpp.com/oj/problem3166.html 致歉 害,首先深感抱歉,这道题还是没有找到很好的解决办法。目前最好情况就是67分。 这道题先这样跳过吧,当然以后还…...
ChatGPT- OpenAI 的 模型(Model) 介绍
ChatGPT的火爆程度大家都知道了,该章节我们来了解一下 ChatGPT 一个关键概念 - 模型(Model)。主要是为大家介绍一下在 OpenAI 中,究竟有哪些模型可以使用。 在后续的章节,我们会分单独的小章节逐一的为大家介绍各个不同模型的调用以及接口参…...

X 态及基于 VCS 的 X-Propagation 检测
🔥点击查看精选 IC 技能树系列文章🔥 🔥点击进入【芯片设计验证】社区,查看更多精彩内容🔥 📢 声明: 🥭 作者主页:【MangoPapa的CSDN主页】。⚠️ 本文首发于CSDN&#…...

数据库之事务隔离级别详解
事务隔离级别详解 一、事务的四大特性(ACID)1. 原子性(atomicity):2. 一致性(consistency):3. 隔离性(isolation):4. 持久性(durability): 二、事务的四种隔离级别1. 读未提交(Read uncommitted)࿱…...
守护进程、僵尸进程、孤儿进程
守护进程、僵尸进程、孤儿进程 守护进程(Daemon Process) 定义 守护进程又称Daemon进程(精灵进程),是Linux中的后台服务进程。 它的生命周期较长,通常独立于控制终端并且周期性地执行某种任务或者等待处…...

软件设计师笔记
软件设计师笔记 计算机组成与体系结构 数据的表示、计算机结构、Flynn分类法、CISC与RISC、流水线技术、存储系统、总线系统、可靠性、校验码 1. 数据的表示 (一)进制转换 R进制转十进制使用按权展开法: 十进制转R进制使用短除法 二进制…...

4_用dockerfile制作镜像
Docker 镜像原理 思考: Docker 镜像本质是什么? Docker 中一个centos镜像为什么只有200MB,而一个centos操作系统的iso文件要几个个G? Docker 中一个tomcat镜像为什么有500MB,而一个tomcat安装包只有70多MBÿ…...

肝一肝设计模式【四】-- 建造者模式
系列文章目录 肝一肝设计模式【一】-- 单例模式 传送门 肝一肝设计模式【二】-- 工厂模式 传送门 肝一肝设计模式【三】-- 原型模式 传送门 肝一肝设计模式【四】-- 建造者模式 传送门 文章目录 系列文章目录前言一、什么是建造者模式二、举个栗子三、静态内部类写法四、开源框…...

从设计到产品
从设计到产品 最近上的一些课的笔记,从 0 开始设计项目的角度去看产品。 设计系统 设计系统(design system) 不是 系统设计(system design),前者更偏向于 UI/UX 设计部分,后者更偏向于实现部分。 个人觉得,前端开发与 UI/UX 设…...
《疯狂Python讲义》值传递的细节
函数的参数包含着整个程序的规范性,之前还是没有那么去注意重要的细节,读完书中函数值传递篇章,还是有所收获的。 参数有两种形式,一种是形参一种是实参,形参可以理解为实参的载体,函数当中的关键词也是描…...

【7. ROS 中的 IMU 惯性测量单元消息包】
欢迎大家阅读2345VOR的博客【6. 激光雷达接入ROS】🥳🥳🥳 2345VOR鹏鹏主页: 已获得CSDN《嵌入式领域优质创作者》称号👻👻👻,座右铭:脚踏实地,仰望星空&#…...
pcie m.2固态硬盘装机后无法识别到启动盘
1、第一种情况《系统版本过低》 原因: 使用m.2固态硬盘的电脑,最好安装iwn8.1以上的系统,因为win7系统及其win xp系统 没有自带NVME驱动。 搞定办法: 比较简单的方式就是直接开运行快启动u盘启动盘制作工具将系统升级到win10系…...
Java Web应用开发 ——第四章:JavaBean技术测验
一.单项选择题(共13题,55.9分) 1 在 JSP 中调用 JavaBean 时不会用到的标记是:( ) A、 < jsp:javabean> B、 < jsp:useBean> C、 < jsp:setProperty> D、 < jsp:getProperty> 正确答案&a…...

CTF权威指南 笔记 -第二章二进制文件- 2.4 -动态链接
目录 静态文件的缺点 动态链接 位置无关代码 延迟绑定 _dl_runtime_reslove 函数定义 深入审视 静态文件的缺点 随着可执行文件的增加 静态链接带来的浪费空间问题就会愈发严重 如果大部分可执行文件都需要glibc 那么在链接的时候就需要把 libc.a链接进去 如果一个libc…...
Vim 调用外部命令学习笔记
Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...
pam_env.so模块配置解析
在PAM(Pluggable Authentication Modules)配置中, /etc/pam.d/su 文件相关配置含义如下: 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块,负责验证用户身份&am…...

Python实现prophet 理论及参数优化
文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候,写过一篇简单实现,后期随着对该模型的深入研究,本次记录涉及到prophet 的公式以及参数调优,从公式可以更直观…...
【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验
系列回顾: 在上一篇中,我们成功地为应用集成了数据库,并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了!但是,如果你仔细审视那些 API,会发现它们还很“粗糙”:有…...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

初学 pytest 记录
安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...
在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案
这个问题我看其他博主也写了,要么要会员、要么写的乱七八糟。这里我整理一下,把问题说清楚并且给出代码,拿去用就行,照着葫芦画瓢。 问题 在继承QWebEngineView后,重写mousePressEvent或event函数无法捕获鼠标按下事…...

无人机侦测与反制技术的进展与应用
国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机(无人驾驶飞行器,UAV)技术的快速发展,其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统,无人机的“黑飞”&…...

CSS3相关知识点
CSS3相关知识点 CSS3私有前缀私有前缀私有前缀存在的意义常见浏览器的私有前缀 CSS3基本语法CSS3 新增长度单位CSS3 新增颜色设置方式CSS3 新增选择器CSS3 新增盒模型相关属性box-sizing 怪异盒模型resize调整盒子大小box-shadow 盒子阴影opacity 不透明度 CSS3 新增背景属性ba…...