可能用到的Linux命令

useradd&passwd

创建用户及密码 (安装数据库时,必须使用非root用户安装)
useradd -m -U kingbase
输入密码
passwd kingbase

mkdir&chown

(1) 数据库安装包及 license 文件存放存放目录:
mkdir /home/kingbase/install<br />chown -R kingbase.kingbase /home/kingbase/install
(2) 数据库软件目录:
mkdir -p /opt/Kingbase/ES/V8<br />chown -R kingbase.kingbase /opt/Kingbase/ES/V8
(3) 数据库数据目录(选择存储空间大的做数据目录):
mkdir -p /dbdata/data<br />chown -R kingbase.kingbase /dbdata/data
(4) 数据库备份目录(选择存储空间大的做备份目录, 最好不与数据目录在同一盘下):
A:物理备份路径
mkdir /dbbackup/kbbr_repo<br />chown -R kingbase.kingbase /dbbackup/kbbr_repo
B:逻辑备份路径
mkdir /dbbackup/logical<br />chown -R kingbase.kingbase /dbbackup/logical

systemclt (防火墙管理)

开启防火墙服务
systemctl start firewalld.service
防火墙状态查看
systemctl status firewalld.service
关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service

mount (挂载设配)

挂载命令
mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点
mount -o -loop .../*.iso /media/

用来把一个文件当成硬盘分区挂接上系统

ln (创建软链接)

ln -s /data/kingbase/data /opt/Kingbase/ES/V8/data

data → /data/kingbase/data

scp (不同服务器之间的文件传输)

从远程复制文件到本地目录:
scp **root@192.168.10.10:/opt/soft/rhel-server-7.3-x86_64.tar.gz** /opt/soft/
上传本地文件到远程机器指定目录:
scp /opt/soft/rhel-server-7.3-x86_64.tar.gz **root@192.168.10.10:/opt/soft/scptest**

vi .bash_profile (配置环境变量)

**export PATH=$PATH:/opt/Kingbase/ES/V8/Server/bin**
**export KINGBASE_DATA=/opt/Kingbase/ES/V8/data**
export LD_LIBRARY_PATH=$PATH:/opt/Kingbase/ES/V8/Server/lib

echo

[kingbase@localhost Scripts]$ echo $KINGBASE_DATA
/opt/Kingbase/ES/V8/data
[kingbase@localhost Scripts]$

sudo

Linux sudo命令以系统管理员的身份执行指令,也就是说,经由sudo所执行的指令就好像是root亲自执行。

通用机装卸启停

https://blog.csdn.net/weixin_43742891/article/details/122035426?spm=1001.2014.3001.5502

数据库状态查询

  1. ps -ef | grep -i kingbase

image.png
启动数据库
image.png

  1. root@UOS:~# ps -ef | grep -i kingbase
  2. kingbase 1435 1 0 09:35 ? 00:00:00 /lib/systemd/systemd --user
  3. kingbase 1444 1435 0 09:35 ? 00:00:00 (sd-pam)
  4. kingbase 1586 1 0 09:35 ? 00:00:00 /opt/Kingbase/ES/V8/Server/bin/kingbase -D /opt/Kingbase/ES/V8/data
  5. kingbase 1888 1586 0 09:35 ? 00:00:00 kingbase: logger
  6. kingbase 1902 1586 0 09:35 ? 00:00:00 kingbase: checkpointer
  7. kingbase 1904 1586 0 09:35 ? 00:00:00 kingbase: background writer
  8. kingbase 1905 1586 0 09:35 ? 00:00:00 kingbase: walwriter
  9. kingbase 1906 1586 0 09:35 ? 00:00:00 kingbase: autovacuum launcher
  10. kingbase 1907 1586 0 09:35 ? 00:00:00 kingbase: stats collector
  11. kingbase 1908 1586 0 09:35 ? 00:00:00 kingbase: ksh writer
  12. kingbase 1909 1586 0 09:35 ? 00:00:00 kingbase: ksh collector
  13. kingbase 1910 1586 0 09:35 ? 00:00:00 kingbase: kwr collector
  14. kingbase 1911 1586 0 09:35 ? 00:00:00 kingbase: logical replication launcher
  15. root 5222 5209 0 09:40 pts/0 00:00:00 grep -i kingbase
  16. root@UOS:~#
  17. kingbase@UOS:/opt/Kingbase/ES/V8/Scripts$ ps -ef | grep -i kingbase
  18. root 5323 5209 0 09:41 pts/0 00:00:00 su - kingbase
  19. kingbase 5324 5323 0 09:41 pts/0 00:00:00 -bash
  20. kingbase 5894 1 0 09:44 ? 00:00:00 /opt/Kingbase/ES/V8/Server/bin/kingbase -D /opt/Kingbase/ES/V8/data
  21. kingbase 5895 5894 0 09:44 ? 00:00:00 kingbase: logger
  22. kingbase 5897 5894 0 09:44 ? 00:00:00 kingbase: checkpointer
  23. kingbase 5898 5894 0 09:44 ? 00:00:00 kingbase: background writer
  24. kingbase 5899 5894 0 09:44 ? 00:00:00 kingbase: walwriter
  25. kingbase 5900 5894 0 09:44 ? 00:00:00 kingbase: autovacuum launcher
  26. kingbase 5901 5894 0 09:44 ? 00:00:00 kingbase: stats collector
  27. kingbase 5902 5894 0 09:44 ? 00:00:00 kingbase: ksh writer
  28. kingbase 5903 5894 0 09:44 ? 00:00:00 kingbase: ksh collector
  29. kingbase 5904 5894 0 09:44 ? 00:00:00 kingbase: kwr collector
  30. kingbase 5905 5894 0 09:44 ? 00:00:00 kingbase: logical replication launcher
  31. kingbase 5918 5324 0 09:44 pts/0 00:00:00 ps -ef
  32. kingbase 5919 5324 0 09:44 pts/0 00:00:00 grep -i kingbase

停止数据库
image.png

专用机装卸启停

数据库的启停与状态查看

ps -ef | grep -i kingbase

  1. kingbase@UOS:~$
  2. kingbase@UOS:~$ ps -ef | grep -i kingbase
  3. kingbase 1450 1 0 16:34 ? 00:00:00 /lib/systemd/systemd --user
  4. kingbase 1458 1450 0 16:34 ? 00:00:00 (sd-pam)
  5. kingbase 1553 1 0 16:34 ? 00:00:00 /opt/Kingbase/ES/V8/Server/bin/kingbase -D /opt/Kingbase/ES/V8/data
  6. kingbase 1665 1553 0 16:34 ? 00:00:00 kingbase: logger
  7. kingbase 1674 1553 0 16:34 ? 00:00:00 kingbase: checkpointer
  8. kingbase 1675 1553 0 16:34 ? 00:00:00 kingbase: background writer
  9. kingbase 1676 1553 0 16:34 ? 00:00:00 kingbase: walwriter
  10. kingbase 1677 1553 0 16:34 ? 00:00:00 kingbase: autovacuum launcher
  11. kingbase 1678 1553 0 16:34 ? 00:00:00 kingbase: stats collector
  12. kingbase 1679 1553 0 16:34 ? 00:00:00 kingbase: ksh writer
  13. kingbase 1680 1553 0 16:34 ? 00:00:00 kingbase: ksh collector
  14. kingbase 1681 1553 0 16:34 ? 00:00:00 kingbase: kwr collector
  15. kingbase 1683 1553 0 16:34 ? 00:00:00 kingbase: logical replication launcher
  16. kingbase 3859 1 0 16:36 ? 00:00:00 /usr/bin/gnome-keyring-daemon --daemonize --login
  17. kingbase 3862 2008 0 16:36 ? 00:00:00 /usr/bin/startdde
  18. kingbase 3876 1450 0 16:36 ? 00:00:00 /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only

systemctl status kingbase8d.service

  1. kingbase@UOS:~$ service kingbase status
  2. kingbase8d.service - LSB: Start and stop the kingbase server
  3. Loaded: loaded (/etc/init.d/kingbase8d; generated)
  4. Active: active (exited) since Wed 2022-02-09 16:34:53 CST; 2min 33s ago
  5. Docs: man:systemd-sysv-generator(8)
  6. Process: 1381 ExecStart=/etc/init.d/kingbase8d start (code=exited, status=0/SUCCESS)
  7. Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.
  8. kingbase@UOS:~$
  9. =======================================================
  10. kingbase@UOS:~$ service kingbase8d status
  11. kingbase8d.service - LSB: Start and stop the kingbase server
  12. Loaded: loaded (/etc/init.d/kingbase8d; generated)
  13. Active: active (exited) since Wed 2022-02-09 16:34:53 CST; 2min 44s ago
  14. Docs: man:systemd-sysv-generator(8)
  15. Process: 1381 ExecStart=/etc/init.d/kingbase8d start (code=exited, status=0/SUCCESS)
  16. Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.
  17. kingbase@UOS:~$
  18. =======================================================
  19. kingbase@UOS:~$ sys_ctl -D /opt/Kingbase/ES/V8/data status
  20. sys_ctl: server is running (PID: 1553)
  21. /opt/Kingbase/ES/V8/Server/bin/kingbase "-D" "/opt/Kingbase/ES/V8/data"
  22. kingbase@UOS:~$
  23. kingbase@UOS:~$

初始化实例

为了引导数据库系统,一个刚刚被初始化好的系统总是包含一个预定义角色。这个角色总是一个”superuser”,并且默认情况下(除非在运行initdb时修改)它的名字和初始化数据库集簇的操作系统用户相同。习惯上,这个角色将被命名为kingbase。为了创建更多角色,你首先必须以初始角色的身份连接。

初始化前:大小敏不敏感?区分大小写?大小写参数

  1. initdb --dbmode=pg -D /home/kingbase/data
  1. ksql -Ukingbase test

每一个到数据库服务器的连接都是使用某个特定角色名建立的,并且这个角色决定发起连接的命令的初始访问权限。要使用一个特定数据库连接的角色
名由客户端指示,该客户端以一种应用相关的风格发起连接请求。例如,ksql程序使用-U命令行选项来指定要以哪个角色连接。很多应用假定该名字默
认是当前操作系统用户(包括createuser和ksql)。因此在角色和操作系统用户之间维护一个名字对应关系通常是很方便的。

常见问题

image.png