Linux系统部署KES

1、安装准备

1.版本说明V008R006C009B0014

V008:是version产品的大版本。
R006:是release产品特性版本。
C009:是通用版
B0014:是build开发过程中的构建版本

2.硬件要求

#安全版和企业版
内存:1GB 以上
硬盘:1GB 以上空闲空间#标准版
内存:512MB 以上
硬盘:1GB 以上空闲空间

3.检查和配置环境

1.查看操作系统信息
[root@node1 ~]# cat /etc/*release2.检查系统内存和存储空间
[root@node1 ~]# free -m
-m表示MB为单位显示[root@node1 ~]# df -h
显示所有文件系统
[root@node1 ~]# df -hl
-l仅显示本地文件系统注意:/tmp目录至少10G空间。3.内核参数
/sbin/sysctl -p	#从配置文件加载并应用内核参数
/sbin/sysctl -a	#显示#Linux资源限制配置文件是
/etc/security/limits.conf
其中文件内容soft 是一个警告值,hard 是真正意义的阈值,超过系统就会报错,一般情况下两者设为同一个值。一般保持系统安装时的默认值即可。

4.准备工作(直接从这里开始)

1#准备Kingbase安装包,license授权文件。2#做基本配置
(1)关闭防火墙和seLinux
(2)创建kingbase用户,并设置密码(第二个命令会同时创建同名用户组 kingbase 以及用户根目录/home/kingbase)
(3)创建程序目录,并授权。创建数据目录	#根据情况来
(4)镜像挂载
其中 -o loop:将文件作为块设备挂载到系统中,使其内容可被访问systemctl status firewalld
systemctl stop firewalld
systemctl disable firewalldsed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
cat /etc/selinux/config | grep SELINUXuseradd -m kingbase
passwd kingbase		#输入两次密码mkdir -p /home/kingbase/KingbaseES/V8 /home/kingbase/KingbaseES/V8/data /archive /backup/dump
chown -R kingbase:kingbase /home/kingbase/KingbaseES/V8
chown -R kingbase:kingbase /home/kingbase/KingbaseES/V8/data
chown -R kingbase:kingbase /backup
chown -R kingbase:kingbase /archive
chown -R kingbase:kingbase /home/kingbase/install
chmod -R 775 /Kingbase/ES
chmod -R 775 /backup
chmod -R 775 /archive
chmod -R 700 /datamount -o loop /home/kingbase/install/KingbaseES_V008R006C008B0020_Lin64_install.iso /mnt/umount ./mnt	#查看挂载信息#重点:
创建用户并设置密码-->安装目录,和数据目录(建议套一层)-->mount挂载

3、修改系统参数

#root用户进行更改
#第一个文件/etc/security/limits.conf
vi /etc/security/limits.conf
root        soft    nofile      655360
root        hard    nofile      655360
root        soft    nproc       655360
root        hard    nproc       655360
root        soft    memlock     50000000
root        hard    memlock     50000000
root        soft    core        unlimited
root        hard    core        unlimitedkingbase    soft    nofile      655360
kingbase    hard    nofile      655360
kingbase    soft    nproc       655360
kingbase    hard    nproc       655360
kingbase    soft    memlock     50000000
kingbase    hard    memlock     50000000
kingbase    soft    core        unlimited
kingbase    hard    core        unlimited#附参数详解:
soft	——指当前系统生效的设置值。
hard——指系统中所能设定的最大值。soft的限制不能比hard的限制高。
nofile——指打开文件的最大数目
nproc——指进程的最大数目
core	——指限制内核文件的大小#第二个文件/etc/sysctl.conf kernel.sem = 50100 64128000 50100 1280  
# 释放time_wait链接
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_timestamps= 1   
net.ipv4.tcp_fin_timeout = 30   
# TCP端口使用范围
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.tcp_keepalive_probes = 3
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.ip_local_port_range = 10000 65000
net.ipv4.tcp_max_tw_buckets = 6000  
# 记录的那些尚未收到客户端确认信息的连接请求的最大值
net.ipv4.tcp_max_syn_backlog = 65536  
# 每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目
net.core.netdev_max_backlog = 32768
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2
net.ipv4.route.gc_timeout = 100
net.ipv4.tcp_wmem = 8192 436600 873200
net.ipv4.tcp_rmem  = 32768 436600 873200
net.ipv4.tcp_mem = 94500000 91500000 92700000
net.ipv4.tcp_max_orphans = 3276800
vm.swappiness=1
fs.file-max=7672460
fs.aio-max-nr=1048576
net.core.somaxconn=4096
vm.min_free_kbytes=521000
vm.vfs_cache_pressure=200
执行以下命令重新加载生效
[root@node1 ~]# sysctl -p *******************其实下面两个不用操作*******************************
#第三个文件(用于控制是否对系统服务和任务进行资源使用统计)
vi /etc/systemd/system.conf
DefaultTasksAccounting=no systemctl daemon-reload 
systemctl daemon-reexec 
service sshd statusSELECT * FROM sys_license_info;#第四个文件(用于控制用户会话结束后是否保留 System V IPC资源)
4、修改/etc/systemd/logind.conf文件中RemoveIPC=no	
[root@node1 ~]# vim /etc/systemd/logind.confRemoveIPC=no	systemctl daemon-reload
systemctl restart systemd-logind 

2、Linux系统-命令行部署(图形化部署就是点击即可)

操作流程

0.变更中文系统
echo $LANG	
export LANG=zh_cCN.UTF-81.启动安装程序
sh /mnt/setup.sh -i console
#说明:加-i表示以控制台的形式安装启动过程。enter表示继续,quit表示退出,back表示上一步。2.阅读许可协议
一直按enter就行,最后输入y3.选择安装集(1)完全安装(2)客户端安装(3)定制安装4.选择授权文件(看实际情况)
/install/license_34148/license_341480.dat5.选择安装路径
默认安装路径是/opt/Kingbase/ES/V8;6.预安装摘要7.安装
(1)选择数据目录
默认/opt/Kingbase/ES/V8/data
一般放/data下
(2)监听端口 
(3)管理员
(4)密码	#自己决定
(5)字符集	
(6)兼容风格	#如果是MySQL在大小写敏感性时选否
(7)大小写敏感性
(8)数据块大小
(9)数据库加密算法8.是否包含server(实现开机自启)#root用户执行
/opt/Kingbase/ES/V8/install/script/root.sh#查看状态
service Kingbased status

3、安装后检查

#查看安装日志installer.log
[root@localhost ~]# find / -name "*.log"|grep kingbase#验证工具是否能连接数据库
./ksql -p 54321 -U system test#查看已安装数据库的版本信息
/opt/Kingbase/ES/V8/Server/bin/kingbase -V 
select version();#解决缺库的问题(一般不会)
如果安装机器操作系统缺少必要的 so 库文件,您可通过如下命令查看到有缺少 so 库文件的情况。在 ${安
装目录}/Server/bin 目录下执行命令:ldd * | grep "not found"${安装目录}/Server/lib 下, 执行如下命令检查是否存在缺少的 so 库文件:
命令:ls
若检查到 ${安装目录}/Server/lib 下存在缺少的 so 库文件,则在 ${安装目录}/Server/lib 下, 执行
命令:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd`

4、卸载

#root用户脚本移除KES开机自启服务
/KingbaseES/V9/install/script/rootuninstall.sh
#卸载KES应用程序
bash /opt/KingbaseES/V9/Uninstall/Uninstaller -i console
#清除安装目录下残留文件
方法1:执行rm -fr /KingbaseES/V9直接删除安装目录。
方法2:执行mvKingbaseES/V9/KingbaseES/V9.bak将安装目录改名。

5、增删组件

5.1 增加组件

#kingbase用户执行
sh setup.sh -i console#输入2,选择修改存在的实例#输入机器上已有实例的序列号#输入1,添加功能#选择功能直接回车,等待完成即可

5.2 删除组件

#kingbase用户执行
/opt/Kingbase/ES/V8/Uninstall/Uninstaller#根据需求删除即可(和添加一样)

目录大全

#[kingbase@localhost ~]$ ls -l /opt/Kingbase/ES/V8/
#(1)软连接,对应目录存放了客户端工具依赖的可执行二进制文件、链接文件等。
ClientTools -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C006B0021/ClientTools/– ClientTools/ guitools/ KStudio:开发管理工具,能运行在各种平台的图形工具,用于管理和配置 KES 数据库服务器,管理各种 KES 数据库对象,进行 KES 数据库的安全管理,调用查询分析器执行和测试 SQL 语句。	– ClientTools/guitools/KDts:数据库迁移工具,可以用于跨平台数据交换和迁移,支持同异构数据源之间的数据迁移。该目录下存放了迁移工具的相关程序和配置文件。– ClientTools/guitools/DeployTools:集群部署工具,用于远程部署集群节点服务。该目录存放了集群部署工具相关的程序和配置文件。#(2)初始化数据库生成的数据目录。
data#(3)软连接,对应目录包含各类帮助手册。
doc -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C006B0021/doc/#(4)软连接,对应目录存放了安装过程中依赖和使用的各类文件。– install/script:该目录下存放了安装和卸载过程中使用的脚本。– install/LICENSE.EN:英文许可协议。– install/LICENSE.ZH:中文许可协议。
install -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C006B0021/install/#(5)软连接,对应目录存放了各类应用程序开发接口程序包。
Interface -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C006B0021/Interface/#(6)实际安装目录,下一级为版本号命名的目录,再下一级为 Server、doc、ClientTools、Interface、install、SupTools、Uninstall、license.dat、KingbaseHA,对应上述各软连接的实际目录。
KESRealPro#(7)软连接,对应目录存放了高可用集群组件相关程序和配置文件。
KingbaseHA -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C006B0021/KingbaseHA/#(8)软连接,执行安装时使用的认证许可证书。
license.dat -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C006B0021/license.dat#(9)软连接,对应目录存放了服务器二进制文件,链接文件等。
Server -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C006B0021/Server/
– Server/bin:服务器二进制文件,可以在该路径下进行启动服务、连接数据库、物理备份还原、逻辑备份
还原等操作。#(10)软连接,对应目录下存放了巡检工具相关脚本和配置文件。
SupTools -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C006B0021/SupTools/#(11)软连接,对应目录包含卸载程序的相关文件。
Uninstall -> /opt/Kingbase/ES/V8/KESRealPro/V008R006C006B0021/Uninstall/

优化内容

1.设置环境变量

[kingbase@node1 ~]$ vi /etc/bashrc
export PATH=$PATH:/home/kingbase/Kingbase/binsource /etc/basbrc

2.测试连接+查看版本

[kingbase@node1 ~]$ ksql -Usystem -dtest[kingbase@node1 ~]$ kingbase -V#启动与停止服务
sys_ctl -w start -D /../data/sys_ctl -m fast -w -D /../data/

3.修改kingbase.conf 文件

#这个目录一般在../data下面,需要free -h内存listen_addresses='*'
port=54321 
max_connections=1000 #按需配置
shared_buffers=RAM*25% #按需配置
effective_cache_size=RAM*0.5GB
work_mem=10MB
maintenance_work_mem=2GB
huge_pages=try
temp_file_limit=-1
wal_level=replica
fsync=on
full_page_writes=on
synchronous_commit=on
wal_buffers=-1
wal_compression=on
checkpoint_timeout=20min
checkpoint_completion_target=0.9
max_wal_size=64GB
min_wal_size=1GB
max_locks_per_transaction=1024
archive_mode=on
archive_command=''
#非Oracle需要删除下面的
ora_input_emptystr_isnull=onlogging_collector=on
log_destination=stderr
log_directory='sys_log'
log_filename='kingbase-%d.log'
log_truncate_on_rotation=on
log_rotation_age=1d
log_rotation_size=10MB
log_statement=ddl
log_min_duration_statement=1000
log_line_prefix='%t [%p]: [%l-1] user=%u,db=%d,app=%a,client=%h'
log_checkpoints=on
log_lock_waits=on
log_autovacuum_min_duration=0
log_temp_files=0
lc_messages='C'
max_parallel_workers_per_gather=0
log_connections=on
log_disconnections=on#重启数据库服务使修改生效(如果配置环境变量就可以直接执行)
[kingbase@node1 bin]$ ./sys_ctl restart -D /home/kingbase/Kingbase/ES/V8/data/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/bicheng/84401.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

系统模块与功能设计框架

系统模块与功能设计框架,严格遵循专业架构设计原则,基于行业标准(如微服务架构、DDD领域驱动设计)构建。设计采用分层解耦模式,确保可扩展性和可维护性,适用于电商、企业服务、数字平台等中大型系统。 系统…

MySQL中【正则表达式】用法

MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现(两者等价),用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例: 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …

Prompt工程学习之自我一致性

自我一致性 (Self-consistency) 概念:该技术通过对同一问题采样不同的推理路径,并通过多数投票选择最一致的答案,来解决大语言模型(LLM)输出的可变性问题。通过使用不同的温度(temp…

gh hugging face使用

install sudo dpkg -i gh_2.74.0_linux_amd64.deb gh auth login gh auth login ? Where do you use GitHub? GitHub.com ? What is your preferred protocol for Git operations on this host? HTTPS ? Authenticate Git with your GitHub credentials? Yes ? How wo…

2025.6.9总结(利与弊)

凡事都有两面性。在大厂上班也不例外。今天找开发定位问题,从一个接口人不断溯源到另一个 接口人。有时候,不知道是谁的责任填。将工作内容分的很细,每个人负责其中的一小块。我清楚的意识到,自己就是个可以随时替换的螺丝钉&…

数据集-目标检测系列- 口红嘴唇 数据集 lips >> DataBall

贵在坚持! * 相关项目 1)数据集可视化项目:gitcode: https://gitcode.com/DataBall/DataBall-detections-100s/overview 2)数据集训练、推理相关项目:GitHub - XIAN-HHappy/ultralytics-yolo-webui: ultralytics-yo…

[论文阅读] 人工智能+项目管理 | 当 PMBOK 遇见 AI:传统项目管理框架的破局之路

当PMBOK遇见AI:传统项目管理框架的“AI适配指南” 论文信息 arXiv:2506.02214 Is PMBOK Guide the Right Fit for AI? Re-evaluating Project Management in the Face of Artificial Intelligence Projects Alexey Burdakov, Max Jaihyun Ahn Subjects: Software …

CentOS7关闭防火墙、Linux开启关闭防火墙

文章目录 一、firewalld开启、关闭防火墙1、查看防火墙状态 一、firewalld开启、关闭防火墙 以下命令在linux系统CentOS7中操作开启关闭防火墙 # 查询防火墙状态 systemctl status firewalld.service # 开启防火墙 systemctl start firewalld.service # 开机自启动防火墙 syste…

Spring是如何实现无代理对象的循环依赖

无代理对象的循环依赖 什么是循环依赖解决方案实现方式测试验证 引入代理对象的影响创建代理对象问题分析 源码见:mini-spring 什么是循环依赖 循环依赖是指在对象创建过程中,两个或多个对象相互依赖,导致创建过程陷入死循环。以下通过一个简…

Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)

参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…

从 GreenPlum 到镜舟数据库:杭银消费金融湖仓一体转型实践

作者:吴岐诗,杭银消费金融大数据应用开发工程师 本文整理自杭银消费金融大数据应用开发工程师在StarRocks Summit Asia 2024的分享 引言:融合数据湖与数仓的创新之路 在数字金融时代,数据已成为金融机构的核心竞争力。杭银消费金…

Bean 作用域有哪些?如何答出技术深度?

导语: Spring 面试绕不开 Bean 的作用域问题,这是面试官考察候选人对 Spring 框架理解深度的常见方式。本文将围绕“Spring 中的 Bean 作用域”展开,结合典型面试题及实战场景,帮你厘清重点,打破模板式回答&#xff0c…

基于 Spring Boot 策略模式的短信服务提供商动态切换实现

一、整体设计思路 为了实现在短信服务提供商变更时,不修改现有代码就能无缝切换到新服务实现,可采用策略模式结合依赖注入以及配置中心化管理的方式来设计软件系统。 二、 具体实现步骤 1. 定义统一接口(以短信服务为例,接口命名为 SmsService) 创建一个抽象的接口,用…

解决SQL Server SQL语句性能问题(9)——SQL语句改写(1)

9.4. SQL语句改写 目前主流关系库的高版本中,特别是作为主流商业关系库的SQL Server来讲,大部分场景中,同一语义和结果集的SQL语句,其不同写法并不会影响CBO为SQL语句生成和选择最合适、最高效的查询计划。但少数情况下,不同写法的同一语义和结果集的SQL语句,CBO也许会为…

设计模式复习小结

1.容易忘得设计原则 接口隔离:指接口中的功能太杂则可以拆分一下。防止实现类实现了接口后自动依赖了一些不需要的功能。不同功能拆分成不同的接口。 里氏代换:强调父类能出现的地方,子类一定能正常跑。 迪米特法则:又称最少知…

昇腾CANN集合通信技术解读——细粒度分级流水算法

随着AI技术的演进,模型的计算复杂度和参数量呈现几何级数增长,这使得传统单机单卡部署在算力供给与显存容量方面显得力不从心,从而直接推动了分布式训练/推理技术的快速发展。今年年初爆火的DeepSeek在训练及推理Prefill阶段采用了分级流水Al…

水泥厂自动化升级利器:Devicenet转Modbus rtu协议转换网关

在水泥厂的生产流程中,工业自动化网关起着至关重要的作用,尤其是JH-DVN-RTU疆鸿智能Devicenet转Modbus rtu协议转换网关,为水泥厂实现高效生产与精准控制提供了有力支持。 水泥厂设备众多,其中不少设备采用Devicenet协议。Devicen…

使用Matplotlib创建炫酷的3D散点图:数据可视化的新维度

文章目录 基础实现代码代码解析进阶技巧1. 自定义点的大小和颜色2. 添加图例和样式美化3. 真实数据应用示例实用技巧与注意事项完整示例(带样式)应用场景在数据科学和可视化领域,三维图形能为我们提供更丰富的数据洞察。本文将手把手教你如何使用Python的Matplotlib库创建引…

Copilot for Xcode (iOS的 AI辅助编程)

Copilot for Xcode 简介Copilot下载与安装 体验环境要求下载最新的安装包安装登录系统权限设置 AI辅助编程生成注释代码补全简单需求代码生成辅助编程行间代码生成注释联想 代码生成 总结 简介 尝试使用了Copilot,它能根据上下文补全代码,快速生成常用…

React 进阶特性

1. ref ref 是 React 提供的一种机制,用于访问和操作 DOM 元素或 React 组件的实例。它可以用于获取某个 DOM 元素的引用,从而执行一些需要直接操作 DOM 的任务,例如手动设置焦点、选择文本或触发动画。 1.1. 使用 ref 的步骤 1. 创建一个 ref:使用 React.createRef 或 …