OceanBase OBServer节点工作目录下通常有audit、bin、etc、etc2、etc3、log、run、store等目录,但这些目录并非都是安装必须的。在启动OBServer节点前需要保证etc、log、run、store这4的目录存在,同时store下应该有clog、slog、sstable这3个目录。etc2、etc3是备份配置文件用的,由OBServer节点创建。audit下存放的是审计日志,也由OBServer节点创建。bin目录用于存放observer二进制文件。如下所示:
[root@node11 ~]# tree observer/ -d -L 1
observer/
├── admin
├── audit
├── bin
├── etc # 配置文件目录
├── etc2 # 配置文件目录
├── etc3 # 配置文件目录
├── lib
├── log # 日志文件目录
├── log_obshell
├── run
└── store -> /root/obdata
11 directories
视频讲解如下 |
---|
【赵渝强老师】OceanBase OBServer节点的目录结构 |
- 配置文件目录
etc、etc2、etc3都是配置文件目录。这三个目录里的内容是完全一致的,区别是后两个目录是OBServer节点创建的,第一个目录是启动前需要准备的。etc2和etc3是配置文件额外保存的目录,由配置项config_additional_dir控制。当配置修改以后,除了会写标准的etc/observer.config.bin以外,还会额外在这些目录创建配置项文件。server启动不会读取额外目录的配置项文件,只是作为额外备份。额外目录如果有权限会自动创建,没有权限则日志中报ERROR。
- 日志文件目录
log目录是存放运行日志的目录,里面包含了observer日志、RS日志和选举日志。单个日志文件大小为256M。
视频讲解如下 |
---|
【赵渝强老师】OceanBase OBServer的日志文件 |
- 数据文件目录
store是数据文件目录,包含了clog、slog、sstable这3个子目录。其中clog、slog是事务日志目录,slog存储静态数据写入的事务日志,clog存储动态数据写入的事务日志。sstable是基线数据目录。sstable目录下会有一个block_file,这个文件在OBServer节点启动后就会被创建。如下所示:
[root@node11 ~]# tree observer/store -L 2
observer/store
├── clog -> /root/redo/clog # 动态数据写入的事务日志
├── slog # 静态数据写入的事务日志
│ ├── server
│ ├── tenant_1
│ ├── tenant_1013
│ └── tenant_1014
└── sstable # 基线数据目录
└── block_file
7 directories, 1 file