通过 yum install 部署 seekdb
本文介绍如何通过 yum install 部署 seekdb。
前提条件
在执行本文操作前,您需确认以下信息:
-
您使用的环境是 RPM 平台系统,目前已验证支持的系统如下。
-
Anolis OS 8.X 版本(内核 Linux 4.19 版本及以上)
-
Anolis OS 23.X 版本(内核 Linux 6.6 版本及以上)
-
Centos Linux 7.X、9.X 版本(内核 Linux 4.19 版本及以上)
-
Debian 11、12 和 13 版本(内核 Linux 4.19 版本及以上)
-
openEuler 22.03 和 24.03 版本(内核 Linux 5.10.0 版本及以上)
-
Ubuntu 20.04、22.04 和 24.04 版本(内核 Linux 4.19 版本及以上)
-
-
当前环境中 CPU 最低要求 1 核。
-
当前环境中的可用内存最低为 2G。
-
您环境中已安装 jq 命令行工具,并正确配置了 systemd 作为系统和服务管理器。
-
您环境中已安装数据库连接工具(MySQL 客户端或 OBClient 客户端)。
-
您使用的用户已具有执行 sudo 命令的权限。
部署 seekdb
步骤一:安装 seekdb
根据所用环境能否连接外部网络,分为在线安装和离线安装两种安装方法。
在线安装
-
添加 seekdb 镜像源
[admin@test001 ~]$ sudo yum-config-manager --add-repo https://mirrors.aliyun.com/oceanbase/OceanBase.repo -
安装 seekdb
[admin@test001 ~]$ sudo yum install seekdb obclient
离线安装
-
您可从 OceanBase 软件下载中心 下载所需版本的 seekdb 。下载完成后,将安装包复制到您的机器上。推荐您使用最新版本的安装包。
-
在安装包所在目录下,执行 rpm 命令安装 seekdb。
[admin@test001 ~]$ sudo rpm -ivh seekdb-*.rpm
步骤二:启动 seekdb
安装 seekdb 后,您可参照如下步骤启动 seekdb。
-
(可选)修改配置文件
您可参照该步骤修改配置文件,未修改的情况下将使用配置文件中的默认配置进行部署。
[admin@test001 ~]$ sudo vim /etc/oceanbase/seekdb.cnf该文件包含的配置项内容如下:
port=2881
data-dir=/var/lib/oceanbase/store
redo-dir=/var/lib/oceanbase/store/redo
datafile_size=2G
datafile_next=2G
datafile_maxsize=50G
cpu_count=4
memory_limit=2G
log_disk_size=2G配置文件中的配置项介绍如下表:
配置项 是否必选 默认值 说明 port 可选 2881 seekdb 的 SQL 服务协议端口号。 redo_dir 可选 /var/lib/oceanbase/store/redo clog、ilog 和 slog 的目录,建议配置为独立的磁盘。 说明
数据盘(默认为
/var/lib/oceanbase/)的可用磁盘空间应当大于 15G。data_dir 可选 /var/lib/oceanbase/store 设置存储 SSTable 等数据的目录,建议配置为独立的磁盘。 说明
数据盘(默认为
/var/lib/oceanbase/)的可用磁盘空间应当大于 15G。datafile_size 可选 2G 指定数据文件(block_file)大小,未配置的情况下以 datafile_disk_percentage配置项为准,详细介绍请参见 datafile_size 和 datafile_disk_percentage。datafile_next 可选 2G 指定数据文件增长的步长。 datafile_maxsize 可选 50G 指定数据文件的最大大小。 cpu_count 可选 4 seekdb 可使用的 CPU 总数,如果设置为 0,将自动检测。 memory_limit 可选 2G seekdb 能从环境中获取的最大内存。 log_disk_size 可选 2G 用于设置 Redo 日志磁盘的大小,未配置的情况下以 log_disk_percentage配置项为准,详细介绍请参考 log_disk_size 和 log_disk_percentage。 -
启动 seekdb
[admin@test001 ~]$ sudo systemctl start seekdb -
查看 seekdb 的启动状态
[admin@test001 ~]$ sudo systemctl status seekdb当状态显示为
Service is ready时,表示 seekdb 已正常启动。
步骤三:连接 seekdb
此处以通过 OBClient 连接 seekdb 为例,命令如下:
[admin@test001 ~]$ obclient -h<IP> -uroot -P<Port> -p<Passwd> -A oceanbase
参数说明:
-
-h:提供 seekdb 连接 IP,使用 systemd 启动的 seekdb 默认 IP 为
127.0.0.1。 -
-u:提供 seekdb 的连接账户,格式:
用户名。seekdb 实例用户名默认是root。 -
-P:提供 seekdb 连接端口,为
/etc/oceanbase/seekdb.cnf中port的值。 -
-p:提供 seekdb 连接密码,默认为空。
-
-A:表示在 OBClient 连接数据库时不自动获取统计信息。
-
oceanbase:访问的数据库的名称,可以更改为业务数据库名。
管理 seekdb
目前仅支持通过 systemd 对 seekdb 进行启动(start)、停止(stop)以及查看状态(status)操作。
查看 seekdb 状态
可执行如下命令查看 seekdb 状态。
[admin@test001 ~]$ sudo systemctl status seekdb
查看 seekdb 状态有如下几种情况:
-
Active展示为active (running),且Status展示为seekdb is ready and running,表示已成功启动 seekdb。 -
Active展示为inactive (dead),表示服务已经停止,即 seekdb 已停止。 -
Active展示为failed,表示服务发生了错误,需查看日志进行排查。
清除 seekdb
您可参照如下步骤清除通过 systemd 启动的 seekdb 。
-
停止 seekdb
[admin@test001 ~]$ sudo systemctl stop seekdb -
卸载 seekdb
-
删除 seekdb 数据库软件包
在线安装方式下,您可执行如下命令:
[admin@test001 ~]$ sudo yum erase seekdbpackage需替换为待删除的软件包名,您可通过yum list | grep seekdb命令查看软件包名。离线安装方式下,您可执行如下命令:
[admin@test001 ~]$ sudo rpm -e seekdbpackage需替换为待删除的软件包名,您可通过rpm -qa | grep seekdb命令查看软件包名。 -
删除 seekdb 数据
执行第一步后,在返回结果中会显示
To clean OceanBase : bash /var/lib/oceanbase/oceanbase_clean.sh,可以通过该命令,完全删除 seekdb。执行本步骤删除 seekdb 数据后,您部署的 seekdb 将完全被卸载。
[admin@test001 ~]$ sudo bash /var/lib/oceanbase/oceanbase_clean.sh
-