「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…...
C++:计算机操作系统:多线程:高并发中的线程
高并发中的线程 一切要从CPU说起PC 程序计数器从CPU到操作系统从进程到线程 从这篇开始,我将会开启高性能,高并发系列,本篇是给系列的开篇,主要关注 多线程以及线程池。 一切要从CPU说起 你可能会有疑问,讲多线程为何…...
大数据Doris(十一):Aggregate 数据模型
文章目录 Aggregate 数据模型 一、导入数据聚合 二、保留明细数据...
osg::Drawable类通过setDrawCallback函数设置回调函数的说明
osg::Drawable类可以通过该类的setDrawCallback函数设置回调函数类对象。被设置的回调类对象必须从osg::Drawable::DrawCallback类派生,并重写drawImplementation函数,以实现自己特定的需求。这个回调函数在每次帧事件中都会被调用(如:在帧的…...
Python基础合集 练习17(类与对象)
class Dog: pass papiDog() print(papi) print(type(papi)) 构建方法 创建类过后可以定义一个特殊的方法。在python中构建方法是__init__(),init()必须包含一个self参数 class pig(): #def__init__(self) -> None: print(‘你好’) pipgpig() 属性和方法 cl…...
再多猜一次就爆炸(小黑子误入)
目录 猜数字游戏 游戏设计思路 1.电脑随机生成一个数 2.猜数字 3.输入我是ikun,泰裤辣! 否则电脑将在一分钟后关机 游戏运行效果 源码 代码分析 代码实现关键语句 strcmp() rand()与srand() 时间戳time() 寄语 猜数字游戏 游戏设计思路 1.电脑随机生…...
图像超分辨率简单介绍
文章目录 图像超分辨率简单介绍什么是图像超分辨率?常见的图像超分辨率算法插值算法基于边缘的图像重建算法局部线性嵌入(LLE)拉普拉斯正则化 基于深度学习的超分辨率算法超分辨率CNN超分辨率GAN 步骤1. 收集数据2. 选择算法3. 训练模型4. 测…...
【Liunx】进程的程序替换——自定义编写极简版shell
目录 进程程序替换[1~5]1.程序替换的接口(加载器)2.什么是程序替换?3.进程替换的原理4.引入多进程5.系列程序替换接口的详细解析(重点!) 自定义编写一个极简版shell[6~8]6.完成命令行提示符7.获取输入的命令…...
c++标准模板(STL)(std::array)(三)
定义于头文件 <array> template< class T, std::size_t N > struct array;(C11 起 std::array 是封装固定大小数组的容器。 此容器是一个聚合类型,其语义等同于保有一个 C 风格数组 T[N] 作为其唯一非静态数据成员的结构体。不同于 C 风格数组…...
c#笔记-创建一个项目
创建一个项目 创建控制台程序 在你安装完成Visual Studio后打开它,你会的到一个启动窗口 点击创建新项目,选择右上角c#的没有Framework的控制台应用。 项目名称,位置自己随意。 目标框架选择NET7.0。 项目创建完成后应该你的界面应该类似…...
Photoshop如何使用图像调色之实例演示?
文章目录 0.引言1.将一张偏冷调的图像调整成暖调2.将图像调整成不同季节色彩倾向3.变换花朵的颜色4.创建人像轮廓风景5.修饰蓝天白云6.调换花草颜色 0.引言 因科研等多场景需要进行绘图处理,笔者对PS进行了学习,本文通过《Photoshop2021入门教程》及其配…...
济宁贵网站建设/seo网站关键词优化报价
1.新建一个本地分支并切换到新建的那个分支: git checkout -b (新分支名) 2.从一个分支切换到另一个分支: git checkout 分支名 3.将代码恢复到最近的一次commit 时候的状态: git stash 4.将代码从最近的一次commit的状态恢复到最新的进度&a…...
外链工具下载/谷歌关键词排名优化
1. 随机森林使用背景 1.1 随机森林定义 随机森林是一种比较新的机器学习模型。经典的机器学习模型是神经网络,有半个多世纪的历史了。神经网络预测精确,但是计算量很大。上世纪八十年代Breiman等人发明分类树的算法(Breiman et al. 1984&…...
住房和成乡建设部网站/推广联盟平台
Scala的变量分为两种:val和var。val跟java的final变量类似,一旦初始化就不能被重新赋值。而var则不同,类似于Java的非final变量,在整个生命周期内var可以被重新赋值。 val msg"Hello";var msg:String "hello"…...
定制型网站制作哪家好/媒体资源网
python2 中 pip install uniout 示例 复制代码 >>> from pprint import pprint >>> langs [ ... Hello, world!, ... 你好,世界!, ... こんにちは世界, ... uHello, world!, ... u你好,世界!, ... uこんにち…...
政府网站建设规划书/上海关键词优化报价
1.new关键字不代表引用 String在AS中是基本类型,属于值类型,但是可以使用new来声明 程序片段: var a:String new String("acss");var b:String a;b "aaaa";trace(a);trace(b); 结果: acssaaaa Array在AS中…...
咸宁网站建设网络公司/站内免费推广有哪些
WordPress 登录界面 404 问题 WordPress 登录界面 404 问题 问题描述: 你没有办法登录到 WordPress 后台,显示 404 错误。 解决办法1: 在数据库你面更新 URL。 如果你可以进入到 phpMyAdmin,尝试在数据库里面更新 URL。 1. 登…...