2.1.数据库配置文件与参数
select NAME,SETTING,CATEGORY from sys_settings where setting like '%conf%';
全局配置文件:参数配置会影响整个实例
非全局配置文件:参数配置文件只会影响单个实例,单个会话,单个用户
kingbase.conf:负责配置文件位置,资料限制,集群复制等
sys_hba.conf:负责客户端的连接和认证
sys_hba.conf, 配置访问主机,连接方式,认证方式
理解:
允许ADDRESS主机通过TYPE方式以METHOD认证通过USER用户连接DATABASE数据库
全局参数修改
1.直接vi或编辑器编辑kingbase.conf
2.使用alter system 命令
重置数据库级别的参数
show search_path;
alter database TEST reset search_path;
重置会话级别参数
set search_path to defualt;
查看数据库已应用的参数配置:
select sourcefile,name,setting,applied from sys_file_settings;
select distinct context from sys_settings;
参数的生效方式:
internal:只能通过编译是设置,创建完成后不能修改
kingbase 通过vi修改kingbase.conf,服务重启生效
sighup 允许修改配置文件,向进程发信号更新,如reload
superuser 超级用户在线修改,只会影响超级用户
user 普通用户在线修改 通过Set命令修改,影响自身会话
superuser-backend 管理员在kingbase.conf更改,不需要重启服务,影响之后的连接。
backend 普通用户在kingbase.conf更改,影响之后的连接
2.2 数据连接参数
select NAME,CONTEXT,UNIT,SETTING,BOOT_VAL,RESET_VAL from sys_settings
where name = 'listen_addresses';
setting默认*号,如设置localhost只允许本地连接
port参数
端口默认是54321
select NAME,UNIT,SETTING,BOOT_VAL,RESET_VAL from sys_settings
where name = 'port';
max_connections参数 默认最大连接数100
superuser_reserved_connections参数 超级用户连接数 默认10
tcp_keepalives_count参数 发送TCP心跳信息的次数,超过值就断开,
默认0,表示使用操作系统参数进行设定
2.3 日志文件及参数
配置文件kingbase.conf
1.开启日志收集功能
cat kingbase.conf |grep -i logging_collect
基本日志参数
cat kingbase.conf |grep -i log_destination
cat kingbase.conf |grep -i log_directory
cat kingbase.conf |grep -i log_filename
cat kingbase.conf |grep -i log_rotation_size
cat kingbase.conf |grep -i log_rotation_age
cat kingbase.conf |grep -i log_min_messages
记录慢SQL
cat kingbase.conf |grep -i log_min_duration_statement
cat kingbase.conf |grep -i log_checkpoints
cat kingbase.conf |grep -i log_connections
cat kingbase.conf |grep -i log_disconnections
cat kingbase.conf |grep -i log_duration
cat kingbase.conf |grep -i log_line_prefix
监控数据库中长时间的锁
cat kingbase.conf |grep -i log_lock_waits
记录DDL操作
cat kingbase.conf |grep -i log_statement
重启生效
查看生效状态
show xxx参数名
2.4 计划任务
保留24小时日志,每小时一个日志文件,日志文件超过1G也进行轮转
show log_filename
show log_truncate_on_rotation
show log_rotation_age
show log_rotation_size;
控制日志文件保留时间是通过参数log_filename
2.5 csv文件格式化
2.6 创建数据库日志表
create table v8_log(
log_time timestamp(3) with time zone,
user_name text,
database_name text,
process_id integer,
connection_from text,
session_id text,
session_line_num bigint,
command_tag text,
session_start_time timestamp with time zone,
virtual_transaction_id text,
transaction_id bigint,
error_severity text,
sql_state_code text,
message text,
detail text,
hint text,
internal_query_pos integer,
context text,
query text,
query_pos integer,
location text,
application_name text,
primary key (session_id,session_line_num));
查看 \d+ v8_log
将日志信息导入表中 xx.csv文件格式化
上面表是针对周的导出csv数据