首页 » PostgreSQL/GaussDB » GaussDB 单机版(505)ARM安装体验
GaussDB 单机版(505)ARM安装体验
GaussDB是华为推出的企业级关系型数据库,这里GaussDB是指FOR OLTP的关系型数据库,该分支产品支持分布式和单机式,支持ARM架构和X86架构,目前也同样支持on-premises 本地部署, 来抢占线下的如oracle\MySQL的国产化替代市场,支持oracle与MySQL兼容模式,之前测试过《体验一下GaussDB集中式(本地部署)的Flashback/TIMECAPSULE 闪回功能》,这次在测试环境ARM平台上安装GaussDB单机版(505版本)用于学习,简单记录。
环境 Gaussdb kernel 505 on BC-LINUX 22 ARM
[gauss@dev]$ uname -a Linux anbob_com 5.10.0-153.24.0.100.6.oe2203sp2.bclinux.aarch64 #1 SMP Thu Nov 23 11:11:44 CST 2023 aarch64 aarch64 aarch64 GNU/Linux [gauss@dev]$ lscpu Architecture: aarch64 CPU op-mode(s): 64-bit Byte Order: Little Endian CPU(s): 8 On-line CPU(s) list: 0-7 Vendor ID: HiSilicon Model name: Kunpeng-920 Model: 0 Thread(s) per core: 1 Core(s) per socket: 8 Socket(s): 1 Stepping: 0x1 Frequency boost: disabled CPU max MHz: 2600.0000 CPU min MHz: 2600.0000 BogoMIPS: 200.00 Flags: fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma dcpop asimddp asimdfhm NUMA: NUMA node(s): 1 NUMA node0 CPU(s): 0-7 Vulnerabilities: Itlb multihit: Not affected L1tf: Not affected Mds: Not affected Meltdown: Not affected Mmio stale data: Not affected Retbleed: Not affected Spec store bypass: Not affected Spectre v1: Mitigation; __user pointer sanitization Spectre v2: Not affected Srbds: Not affected Tsx async abort: Not affected [gauss@dev]$ cat /etc/*release BigCloud Enterprise Linux For Euler release 22.10U2 LTS BigCloud Enterprise Linux For Euler release 22.10U2 LTS NAME="BigCloud Enterprise Linux" VERSION="22.10U2 LTS" ID="bclinux" VERSION_ID="22.10U2" PRETTY_NAME="BigCloud Enterprise Linux For Euler 22.10U2 LTS" ANSI_COLOR="0;31" BigCloud Enterprise Linux For Euler release 22.10U2 LTS
上传介质
# ll total 982128 -rw-r--r-- 1 root root 1005684529 Apr 29 16:57 'GaussDB Kernel 505.2.0.B031.zip'
创建用户
— 注,这里仅用于学习,未标准化安装,未使用omm
[root@anbob_com ~]# useradd gauss [root@anbob_com ~]# mv GaussDB505.2.0.B031.zip /home/gauss
解压
— 可以直接 解压到 指定的数据库软件目录 这里我使用了/home/gauss下
[gauss@anbob_com ~]$ unzip GaussDB505.2.0.B031.zip Archive: GaussDB505.2.0.B031.zip creating: Euler2.10_arm_64/ inflating: Euler2.10_arm_64/GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz.hwp7s inflating: Euler2.10_arm_64/GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz.hwp7s inflating: Euler2.10_arm_64/GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz inflating: Euler2.10_arm_64/GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz inflating: Euler2.10_arm_64/GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz.swbom inflating: Euler2.10_arm_64/GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz.swbom inflating: Euler2.10_arm_64/GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz.swbom.asc inflating: Euler2.10_arm_64/GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz.swbom.p7s inflating: Euler2.10_arm_64/GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz.swbom.asc inflating: Euler2.10_arm_64/GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz.swbom.p7s inflating: Euler2.10_arm_64/GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz.asc inflating: Euler2.10_arm_64/GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz.p7s inflating: Euler2.10_arm_64/GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz.asc inflating: Euler2.10_arm_64/GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz.p7s [gauss@anbob_com Euler2.10_arm_64]$ ll total 981980 -rw-r--r-- 1 gauss gauss 32547077 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz --集群件 -rw-r--r-- 1 gauss gauss 490 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz.asc -rw-r--r-- 1 gauss gauss 8200 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz.hwp7s -rw-r--r-- 1 gauss gauss 8690 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz.p7s -rw-r--r-- 1 gauss gauss 17055 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz.swbom -rw-r--r-- 1 gauss gauss 490 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz.swbom.asc -rw-r--r-- 1 gauss gauss 8690 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz.swbom.p7s -rw-r--r-- 1 gauss gauss 972779686 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz --数据库软件 -rw-r--r-- 1 gauss gauss 490 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz.asc -rw-r--r-- 1 gauss gauss 8200 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz.hwp7s -rw-r--r-- 1 gauss gauss 8690 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz.p7s -rw-r--r-- 1 gauss gauss 100506 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz.swbom -rw-r--r-- 1 gauss gauss 490 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz.swbom.asc -rw-r--r-- 1 gauss gauss 8690 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz.swbom.p7s [gauss@anbob_com Euler2.10_arm_64]$ tar -zxvf GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz GaussDB-Kernel_505.2.0_Euler_64bit.tar.gz GaussDB-Kernel_505.2.0_Euler_64bit_CM_Symbol.tar.gz GaussDB-Kernel_505.2.0_Euler_64bit_DBMind.tar.gz GaussDB-Kernel_505.2.0_Euler_64bit_Gds.tar.gz GaussDB-Kernel_505.2.0_Euler_64bit_Go.tar.gz GaussDB-Kernel_505.2.0_Euler_64bit_Gsql.tar.gz GaussDB-Kernel_505.2.0_Euler_64bit_Jdbc.tar.gz GaussDB-Kernel_505.2.0_Euler_64bit_Libpq.tar.gz GaussDB-Kernel_505.2.0_Euler_64bit_Libpq_Static.tar.gz GaussDB-Kernel_505.2.0_Euler_64bit_Odbc.tar.gz GaussDB-Kernel_505.2.0_Euler_64bit_Python.tar.gz GaussDB-Kernel_505.2.0_Euler_64bit_Symbol.tar.gz GaussDB-Kernel_505.2.0_Euler_64bit_Xbsa.tar.gz GaussDB-Kernel_505.2.0_Windows_X64_Odbc.tar.gz GaussDB-Kernel_505.2.0_Windows_X86_Odbc.tar.gz -- 带了一些开发语言使用的驱动程序, 继续解压 [gauss@anbob_com Euler2.10_arm_64]$ tar -zxvf GaussDB-Kernel_505.2.0_Euler_64bit.tar.gz ./GaussDB-Kernel_505.2.0_Euler_64bit.bin ./GaussDB-Kernel_505.2.0_Euler_64bit.sha256 ./components/ ... [gauss@anbob_com Euler2.10_arm_64]$ ll total 2011848 drwxr-xr-x 3 gauss gauss 16 Sep 20 2024 components drwxr-xr-x 4 gauss gauss 28 Sep 20 2024 dependency -rw-r--r-- 1 gauss gauss 32547077 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz -rw-r--r-- 1 gauss gauss 490 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz.asc -rw-r--r-- 1 gauss gauss 8200 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Om_ARM_Centralized.tar.gz.hwp7s ... -rw-r--r-- 1 gauss gauss 8690 Oct 16 2024 GaussDB-Kernel_505.2.0.B031_Server_ARM_Centralized.tar.gz.swbom.p7s -rwx------ 1 gauss gauss 74259768 Sep 20 2024 GaussDB-Kernel_505.2.0_Euler_64bit.bin ... [gauss@anbob_com Euler2.10_arm_64]$ ./GaussDB-Kernel_505.2.0_Euler_64bit.bin 7-Zip SFX 17.05 : Copyright (c) 1999-2021 Igor Pavlov : 2017-08-28 p7zip Version 17.05 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,8 CPUs LE) Extracting archive: ./GaussDB-Kernel_505.2.0_Euler_64bit.bin -- Path = ./GaussDB-Kernel_505.2.0_Euler_64bit.bin Type = 7z Everything is Ok
Note:
到此步解压完成
配置环境变量
[gauss@anbob_com ~]$ vi .bash_profile export GAUSSHOME=/home/gauss/Euler2.10_arm_64 export PGDATA=$GAUSSHOME/data export PATH=$GAUSSHOME/bin:$PATH export LD_LIBRARY_PATH=$GAUSSHOME/lib:$LD_LIBRARY_PATH export PGPORT=9564 [gauss@anbob_com ~]$ . .bash_profile
Note:
软件目录不建议带符号,后面安装时有提示路径问题。
初始化安装数据库
[gauss@anbob_com ~]$ cd $GAUSSHOME
[gauss@anbob_com Euler2.10_arm_64]$
[gauss@anbob_com Euler2.10_arm_64]$ mkdir data log
[gauss@anbob_com Euler2.10_arm_64]$ which gs_initdb
/home/gauss/Euler2.10_arm_64/bin/gs_initdb
[gauss@anbob_com Euler2.10_arm_64]$ gs_initdb -D $GAUSSHOME/data -X $GAUSSHOME/log
gs_initdb: GaussDB node name is mandatory
[gauss@anbob_com Euler2.10_arm_64]$ gs_initdb -D $GAUSSHOME/data -X $GAUSSHOME/log --nodename=anbob_com
gs_initdb: GaussDB node name:anbob_com is invalid.
The node name must consist of lowercase letters (a-z), underscores (_), special characters #, digits (0-9), or dollar ($).
The node name must start with a lowercase letter (a-z), or an underscore (_).
The max length of nodename is 64.
[gauss@anbob_com Euler2.10_arm_64]$ gs_initdb -D $GAUSSHOME/data -X $GAUSSHOME/log --nodename=anbob
The files belonging to this database system will be owned by user "gauss".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.UTF-8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
fixing permissions on existing directory /home/gauss/Euler2.10_arm_64/data ... ok
fixing permissions on existing directory /home/gauss/Euler2.10_arm_64/log ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 32MB
creating configuration files ... ok
Begin init undo subsystem meta.
[INIT UNDO] Init undo subsystem meta successfully.
creating template1 database in /home/gauss/Euler2.10_arm_64/data/base/1 ... The core dump path is an invalid directory
ok
initializing pg_authid ... ok
setting password ... ok
initializing dependencies ... ok
loading PL/pgSQL server-side language ... ok
creating system views ... ok
creating others system views ... ok
creating private system views ... ok
creating others private system views ... ok
creating performance views ... ok
loading system objects' descriptions ... ok
creating collations ... ok
creating conversions ... ok
creating dictionaries ... ok
setting privileges on built-in objects ... ok
initialize global configure for bucketmap length ... ok
initialize storage type for undo subsystem ... ok
creating information schema ... ok
loading foreign-data wrapper for distfs access ... ok
loading packages extension ... ok
loading foreign-data wrapper for log access ... ok
loading hstore extension ... ok
loading numeric extension ... ok
loading security plugin ... ok
loading gsstat plugin ... ok
loading dblink_fdw extension ... ok
update system tables ... ok
creating snapshots catalog ... ok
vacuuming database template1 ... ok
creating templatea database in /home/gauss/Euler2.10_arm_64/data/base/3 ... The core dump path is an invalid directory
ok
...
...
finialize templatem ... ok
vacuuming database templatem ... ok
freezing database templatem ... ok
executing logical dictionary baseline for database templatem ... ok
executing logical dictionary baseline for database template1 ... ok
executing logical dictionary baseline for database template0 ... ok
executing logical dictionary baseline for database templatea ... ok
executing logical dictionary baseline for database postgres ... ok
WARNING: enabling "trust" authentication for local connections
You can change this by editing gs_hba.conf or using the option -A, or
--auth-local and --auth-host, the next time you run gs_initdb.
Success. You can now start the database server of single node using:
gaussdb -D /home/gauss/Euler2.10_arm_64/data --single_node
or
gs_ctl start -D /home/gauss/Euler2.10_arm_64/data -Z single_node -l logfile
启动数据库
[gauss@anbob_com Euler2.10_arm_64]$ gs_ctl start -D /home/gauss/Euler2.10_arm_64/data -Z single_node -l logfile [2025-04-29 17:38:59.835][817927][][gs_ctl]: gs_ctl started,datadir is /home/gauss/Euler2.10_arm_64/data [2025-04-29 17:39:00.100][817927][][gs_ctl]: waiting for server to start... .. [2025-04-29 17:39:02.124][817927][][gs_ctl]: done [2025-04-29 17:39:02.124][817927][][gs_ctl]: server started (/home/gauss/Euler2.10_arm_64/data) [gauss@anbob_com Euler2.10_arm_64]$ ps -ef|grep gauss root 805128 797176 0 17:14 pts/0 00:00:00 su - gauss gauss 805129 805128 0 17:14 pts/0 00:00:00 -bash gauss 817932 1 62 17:38 pts/0 00:00:05 /home/gauss/Euler2.10_arm_64/bin/gaussdb -D /home/gauss/Euler2.10_arm_64/data
连接数据库
[gauss@anbob_com Euler2.10_arm_64]$ gsql gsql: FATAL: database "gauss" does not exist [gauss@anbob_com Euler2.10_arm_64]$ gsql postgres gsql ((GaussDB Kernel 505.2.0 build 82d715e8) compiled at 2024-09-20 00:15:22 commit 9967 last mr 19883 release) Non-SSL connection (SSL connection is recommended when requiring high-security) Type "help" for help. gaussdb=# \l ERROR: Please use "ALTER ROLE "gauss" PASSWORD 'password';" to set the password of the user before other operations! gaussdb=# ALTER ROLE "gauss" PASSWORD 'anbob_com'; ERROR: Password must contain at least three kinds of characters. gaussdb=# ALTER ROLE "gauss" PASSWORD 'Anbob.com'; ALTER ROLE gaussdb=# \l List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges -----------+-------+----------+-------------+-------------+------------------- postgres | gauss | UTF8 | en_US.UTF-8 | en_US.UTF-8 | template0 | gauss | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/gauss + | | | | | gauss=CTc/gauss template1 | gauss | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/gauss + | | | | | gauss=CTc/gauss templatea | gauss | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/gauss + | | | | | gauss=CTc/gauss templatem | gauss | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/gauss + | | | | | gauss=CTc/gauss (5 rows) gaussdb=# create database anbob; CREATE DATABASE gaussdb=# create database gauss; CREATE DATABASE [gauss@anbob_com data]$ gsql gsql ((GaussDB Kernel 505.2.0 build 82d715e8) compiled at 2024-09-20 00:15:22 commit 9967 last mr 19883 release) Non-SSL connection (SSL connection is recommended when requiring high-security) Type "help" for help. gauss=# create user anbob with password 'Anbob.com' ; CREATE ROLE gauss=# grant all privileges to anbob; ALTER ROLE [gauss@anbob_com data]$ gsql anbob -d gauss Password for user anbob: xxxxxxx gsql ((GaussDB Kernel 505.2.0 build 82d715e8) compiled at 2024-09-20 00:15:22 commit 9967 last mr 19883 release) Non-SSL connection (SSL connection is recommended when requiring high-security) Type "help" for help. gauss=# select version(); version ------------------------------------------------------------------------------------------------------------------- gaussdb (GaussDB Kernel 505.2.0 build 82d715e8) compiled at 2024-09-20 00:15:22 commit 9967 last mr 19883 release (1 row) gauss=# select sysdate from dual; sysdate --------------------- 2025-04-29 18:02:23 (1 row)
— done —
目前这篇文章还没有评论(Rss)