kingbase教程FG006-目录结构与核心文件
内容简介
本篇文章详细介绍KingbaseES数据库的目录结构与核心文件,包括安装目录、数据目录、配置文件、日志文件等内容。风哥教程参考kingbase官方文档KingbaseES管理员手册,。
通过本文的学习,您将了解KingbaseES的目录结构组织方式,掌握核心文件的作用和配置方法,为后续的数据库管理和维护打下基础。
本文适用于Oracle Linux、RHEL、国产麒麟等Linux系统环境,内容涵盖生产环境中常见的目录和文件管理操作。
目录大纲
- Part01-基础概念与理论知识
- Part02-生产环境规划与建议
- Part03-生产环境项目实施方案
- Part04-生产案例与实战讲解
- Part05-风哥经验总结与分享
- 5.1 目录管理最佳实践
- 5.2 核心文件备份策略,风哥提示:
Part01-基础概念与理论知识
1.1 目录结构概述
KingbaseES的目录结构主要包括以下几部分:
- 安装目录:包含数据库软件、可执行文件、库文件等
- 数据目录:包含数据库集群的数据文件、配置文件、日志文件等
- 归档目录:存储WAL归档日志
- 备份目录:存储数据库备份文件
合理的目录结构有助于提高数据库的管理效率和安全性。
1.2 核心文件分类
KingbaseES的核心文件主要分为以下几类:
- 配置文件:如kingbase.conf、pg_hba.conf等
- 数据文件:表空间文件、WAL文件等,学习交流加群风哥微信: itpux-com
- 日志文件:错误日志、审计日志等
- 可执行文件:如postgres、initdb、sys_ctl等
- 库文件:各种功能模块的库文件
Part02-生产环境规划与建议
2.1 目录规划建议
风哥提示:目录规划是数据库部署的重要环节,直接影响后续的管理和维护。。
在生产环境中,建议采用以下目录结构:
- 安装目录:/kingbase/app
- 数据目录:/kingbase/fgdata
- 归档目录:/kingbase/archive,学习交流加群风哥QQ113257174
- 备份目录:/kingbase/backup
- 临时目录:/kingbase/tmp
这样的目录结构有助于:
- 分离软件和数据,便于升级和维护
- 集中管理归档和备份文件
- 提高数据安全性
- 便于监控和管理
2.2 文件管理最佳实践
文件管理的最佳实践包括:
- 权限管理:严格控制文件权限,避免权限过大,更多视频教程www.fgedu.net.cn
- 备份策略:定期备份核心配置文件
- 日志管理:设置合理的日志保留策略
- 版本控制:对配置文件进行版本管理
- 监控告警:监控文件系统空间使用情况
Part03-生产环境项目实施方案
3.1 安装目录结构
安装目录(/kingbase/app)的结构如下:
# 查看安装目录结构
# 执行
# 输出日志
[kingbase@fgedu.net.cn ~]$ ls -la /kingbase/app/
total 40
drwxr-xr-x 8 kingbase kingbase 4096 Apr 9 10:00 .
drwxr-xr-x 6 kingbase kingbase 4096 Apr 9 09:50 ..
drwxr-xr-x 2 kingbase kingbase 4096 Apr 9 10:00 bin # 可执行文件
drwxr-xr-x 3 kingbase kingbase 4096 Apr 9 10:00 doc # 文档
drwxr-xr-x 3 kingbase kingbase 4096 Apr 9 10:00 include # 头文件
drwxr-xr-x 4 kingbase kingbase 4096 Apr 9 10:00 lib # 库文件
drwxr-xr-x 4 kingbase kingbase 4096 Apr 9 10:00 share # 共享文件
drwxr-xr-x 2 kingbase kingbase 4096 Apr 9 10:00 ssl # SSL证书
3.2 数据目录结构
数据目录(/kingbase/fgdata)的结构如下:
# 查看数据目录结构
# 执行
# 输出日志
[kingbase@fgedu.net.cn ~]$ ls -la /kingbase/fgdata/
total 68
drwx—— 19 kingbase kingbase 4096 Apr 9 11:00 .
drwxr-xr-x 5 kingbase kingbase 4096 Apr 9 10:00 ..
drwx—— 5 kingbase kingbase 4096 Apr 9 10:30 base # 基础表空间
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 global # 全局系统表
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 pg_commit_ts # 提交时间戳
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 pg_dynshmem # 动态共享内存
drwx—— 4 kingbase kingbase 4096 Apr 9 10:30 pg_logical # 逻辑复制
drwx—— 4 kingbase kingbase 4096 Apr 9 10:30 pg_multixact # 多事务
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 pg_notify # 通知
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 pg_replslot # 复制槽
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 pg_serial # 序列号
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 pg_snapshots # 快照
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 pg_stat # 统计信息
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 pg_stat_tmp # 临时统计信息
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 pg_subtrans # 子事务
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 pg_tblspc # 表空间链接
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 pg_twophase # 两阶段提交
drwx—— 3 kingbase kingbase 4096 Apr 9 10:30 pg_wal # WAL文件
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 pg_xact # 事务日志
-rw——- 1 kingbase kingbase 4 Apr 9 10:30 PG_VERSION # 版本信息
-rw——- 1 kingbase kingbase 234 Apr 9 10:30 postgresql.auto.conf # 自动配置
-rw——- 1 kingbase kingbase 2802 Apr 9 10:30 pg_hba.conf # 客户端认证配置
-rw——- 1 kingbase kingbase 1636 Apr 9 10:30 pg_ident.conf # 身份映射配置
-rw——- 1 kingbase kingbase 4364 Apr 9 10:30 kingbase.conf # 主配置文件
3.3 核心配置文件
KingbaseES的核心配置文件包括:
3.3.1 kingbase.conf
主配置文件,包含数据库的各种参数设置:,更多学习教程公众号风哥教程itpux_com
# 查看kingbase.conf文件内容
# 执行
# 输出日志
[kingbase@fgedu.net.cn ~]$ cat /kingbase/fgdata/kingbase.conf | grep -v “^#” | grep -v “^$”
listen_addresses = ‘*’
port = 54321
max_connections = 200
shared_buffers = 4GB
work_mem = 16MB
maintenance_work_mem = 512MB
effective_cache_size = 12GB
random_page_cost = 1.1
wal_buffers = 16MB
checkpoint_completion_target = 0.9
default_statistics_target = 100
log_destination = ‘stderr’
logging_collector = on
log_directory = ‘log’
log_filename = ‘kingbase-%Y-%m-%d_%H%M%S.log’
log_rotation_age = 1d
log_rotation_size = 100MB
archive_mode = on
archive_command = ‘cp %p /kingbase/archive/%f’
3.3.2 pg_hba.conf
客户端认证配置文件,控制哪些用户可以从哪些地址连接到哪些数据库:
# 查看pg_hba.conf文件内容
# 执行
# 输出日志
[kingbase@fgedu.net.cn ~]$ cat /kingbase/fgdata/pg_hba.conf | grep -v “^#” | grep -v “^$”
local all all trust
host all all 127.0.0.1/32 trust
host all all 192.168.1.0/24 md5
host replication all 192.168.1.0/24 md5
3.3.3 pg_ident.conf
身份映射配置文件,用于将操作系统用户映射到数据库用户:
# 查看pg_ident.conf文件内容
# 执行
# 输出日志
[kingbase@fgedu.net.cn ~]$ cat /kingbase/fgdata/pg_ident.conf | grep -v “^#” | grep -v “^$”
# 示例配置
# mapname system username database username
# mymap kingbase system
3.4 日志文件管理
KingbaseES的日志文件包括:
3.4.1 错误日志
存储数据库运行过程中的错误信息:
# 查看错误日志目录
# 执行
# 输出日志
[kingbase@fgedu.net.cn ~]$ ls -la /kingbase/fgdata/log/
total 128
drwx—— 2 kingbase kingbase 4096 Apr 9 11:00 .
drwx—— 19 kingbase kingbase 4096 Apr 9 11:00 ..
-rw——- 1 kingbase kingbase 65536 Apr 9 11:00 kingbase-2026-04-09_100000.log
-rw——- 1 kingbase kingbase 65536 Apr 9 11:00 kingbase-2026-04-09_110000.log
3.4.2 WAL日志
预写式日志,用于崩溃恢复和复制:
# 查看WAL日志目录
# 执行
# 输出日志
[kingbase@fgedu.net.cn ~]$ ls -la /kingbase/fgdata/pg_wal/
total 16384
drwx—— 3 kingbase kingbase 4096 Apr 9 10:30 .
drwx—— 19 kingbase kingbase 4096 Apr 9 11:00 ..
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 archive_status
-rw——- 1 kingbase kingbase 16777216 Apr 9 10:30 000000010000000000000001
-rw——- 1 kingbase kingbase 16777216 Apr 9 10:45 000000010000000000000002
-rw——- 1 kingbase kingbase 16777216 Apr 9 11:00 000000010000000000000003
3.4.3 归档日志
WAL日志的归档文件:
# 查看归档日志目录
# 执行
# 输出日志
[kingbase@fgedu.net.cn ~]$ ls -la /kingbase/archive/
total 49152
drwxr-xr-x 2 kingbase kingbase 4096 Apr 9 10:30 .
drwxr-xr-x 5 kingbase kingbase 4096 Apr 9 10:00 ..
-rw——- 1 kingbase kingbase 16777216 Apr 9 10:45 000000010000000000000001
-rw——- 1 kingbase kingbase 16777216 Apr 9 11:00 000000010000000000000002
Part04-生产案例与实战讲解
4.1 目录结构检查
定期检查目录结构和文件状态,确保数据库正常运行:
4.1.1 检查目录权限
# 检查目录权限
# 执行
# 输出日志
[root@fgedu.net.cn ~]# find /kingbase -type d -exec ls -ld {} \; | grep -v “\.\.”
drwxr-xr-x 6 kingbase kingbase 4096 Apr 9 10:00 /kingbase
drwxr-xr-x 2 kingbase kingbase 4096 Apr 9 10:00 /kingbase/archive
drwxr-xr-x 8 kingbase kingbase 4096 Apr 9 10:00 /kingbase/app
drwxr-xr-x 2 kingbase kingbase 4096 Apr 9 10:00 /kingbase/backup
drwx—— 19 kingbase kingbase 4096 Apr 9 11:00 /kingbase/fgdata
drwx—— 5 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/base
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/global
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_commit_ts
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_dynshmem
drwx—— 4 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_logical
drwx—— 4 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_multixact
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_notify
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_replslot
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_serial
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_snapshots
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_stat
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_stat_tmp
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_subtrans
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_tblspc
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_twophase
drwx—— 3 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_wal
drwx—— 2 kingbase kingbase 4096 Apr 9 10:30 /kingbase/fgdata/pg_xact
drwx—— 2 kingbase kingbase 4096 Apr 9 11:00 /kingbase/fgdata/log
4.1.2 检查文件系统空间
# 检查文件系统空间
# 执行
# 输出日志
[root@fgedu.net.cn ~]# df -h /kingbase/
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 500G 50G 450G 10% /kingbase
4.2 核心文件维护
核心文件的维护包括:
4.2.1 配置文件备份
# 备份配置文件
# 执行
# 输出日志
[kingbase@fgedu.net.cn ~]$ mkdir -p /kingbase/backup/config
[kingbase@fgedu.net.cn ~]$ cp /kingbase/fgdata/kingbase.conf /kingbase/backup/config/
[kingbase@fgedu.net.cn ~]$ cp /kingbase/fgdata/pg_hba.conf /kingbase/backup/config/
[kingbase@fgedu.net.cn ~]$ cp /kingbase/fgdata/pg_ident.conf /kingbase/backup/config/
[kingbase@fgedu.net.cn ~]$ ls -la /kingbase/backup/config/
total 20
drwxr-xr-x 2 kingbase kingbase 4096 Apr 9 11:10 .
drwxr-xr-x 2 kingbase kingbase 4096 Apr 9 10:00 ..
-rw——- 1 kingbase kingbase 4364 Apr 9 11:10 kingbase.conf
-rw——- 1 kingbase kingbase 2802 Apr 9 11:10 pg_hba.conf
-rw——- 1 kingbase kingbase 1636 Apr 9 11:10 pg_ident.conf
4.2.2 日志文件清理
# 清理旧日志文件
# 执行
# 输出日志
[kingbase@fgedu.net.cn ~]$ find /kingbase/fgdata/log -name “kingbase-*.log” -mtime +7 -delete
[kingbase@fgedu.net.cn ~]$ find /kingbase/archive -name “00000001*” -mtime +30 -delete
4.2.3 配置文件版本管理
# 使用git进行配置文件版本管理
# 执行
# 输出日志
[kingbase@fgedu.net.cn ~]$ cd /kingbase/backup/config
[kingbase@fgedu.net.cn config]$ git init
Initialized empty Git repository in /kingbase/backup/config/.git/
[kingbase@fgedu.net.cn config]$ git add .
[kingbase@fgedu.net.cn config]$ git commit -m “Initial commit of configuration files”
[master (root-commit) 1234567] Initial commit of configuration files
3 files changed, 8800 insertions(+)
create mode 100644 kingbase.conf
create mode 100644 pg_hba.conf
create mode 100644 pg_ident.conf
Part05-风哥经验总结与分享
5.1 目录管理最佳实践
- 分离存储:将数据、归档、备份等目录放在不同的存储设备上,from DB视频:www.itpux.com
- 权限控制:严格控制目录权限,避免非授权访问
- 空间监控:定期监控目录空间使用情况,设置告警阈值
- 规范命名:使用统一的目录命名规范,便于管理
- 文档记录:详细记录目录结构和文件用途
5.2 核心文件备份策略
核心文件的备份策略包括:
5.2.1 配置文件备份
- 每次修改配置文件后立即备份
- 定期(如每周)进行全量备份
- 使用版本控制系统管理配置文件
5.2.2 日志文件管理
- 设置合理的日志保留期限
- 定期清理过期日志文件
- 考虑使用日志集中管理系统
风哥提示:定期备份核心配置文件是数据库管理的重要环节,能够在配置错误时快速恢复。,。
通过本文的学习,您已经了解了KingbaseES的目录结构与核心文件,掌握了目录管理和文件维护的最佳实践。在实际生产环境中,合理的目录结构和文件管理能够提高数据库的可靠性和可维护性。
本文档风哥教程参考kingbase官方文档KingbaseES管理员手册编写,。
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
