[global]secure_mode=tls
management_user=kaiwudb
rest_port=8080kaiwudb_port=26257grpc_port=27257data_root=/app/kwdb/data/kaiwudb
[local]node_addr=你的公网 IP
现象:启动失败,日志报 no space left on device。
解决:清理磁盘空间,检查 data_root 目录权限。
八、性能基线测试
1. 写入测试
建表并写入 1 万行数据:
cat <<'SQL' | sudo /usr/local/kaiwudb/bin/kwbase sql --certs-dir=/etc/kaiwudb/certs --host=127.0.0.1:26257
create database if not exists bench;
create table if not exists bench.t_write (
ts timestamp,
dev varchar(32),
v1 double precision,
v2 double precision
);
SQL
批量插入:
N=10000
(echo"begin;"for i in $(seq 1 $N); doecho"insert into bench.t_write values (now(), 'dev-01', $i, $i);"doneecho"commit;") | timesudo /usr/local/kaiwudb/bin/kwbase sql --certs-dir=/etc/kaiwudb/certs --host=127.0.0.1:26257
2. 查询测试
cat <<'SQL' | timesudo /usr/local/kaiwudb/bin/kwbase sql --certs-dir=/etc/kaiwudb/certs --host=127.0.0.1:26257
select count(*) from bench.t_write;
select count(*) from bench.t_write where dev='dev-01';
SQL
3. 索引优化
创建索引并对比查询计划:
cat <<'SQL' | sudo /usr/local/kaiwudb/bin/kwbase sql --certs-dir=/etc/kaiwudb/certs --host=127.0.0.1:26257
create index if not exists idx_t_write_dev on bench.t_write (dev);
SQL
explain analyze select count(*) from bench.t_write where dev='dev-01';
4. 稳定性测试
重启服务验证数据持久化:
sudo systemctl restart kaiwudb
sudo systemctl status kaiwudb --no-pager
sudo ss -tulnp | grep -E '(:26257|:8080)\b' || truecat <<'SQL' | sudo /usr/local/kaiwudb/bin/kwbase sql --certs-dir=/etc/kaiwudb/certs --host=127.0.0.1:26257
select count(*) from bench.t_write;
SQL