華為GaussDB T(Gaussdb 100) 安裝系列一
最近華為自主研發的gaussDB談論的比較多,為了一探究竟,抓緊裝來瞧瞧,下面是單機版安裝順序,有興趣的同學可以按照這個步驟自己拔草。
本次拔草的是GaussDB 100:OLTP型資料庫,分散式並行資料庫叢集,2011年開始研發。GaussDB 100 包括兩條線,一條產品線是基於單機版開源資料庫 PostgreSQL 研發的產品,另一條線是自研核心的 GaussDB 100 產品。
下面開始拔草:
環境:
系統版本:RedHat7.5 X86 64
資料庫版本:GaussDB100 V1.0.0
一、開啟root使用者遠端登入許可權
1、編輯sshd_config檔案
vi /etc/ssh/sshd_config
2、修改PermitRootLogin配置,允許使用者遠端登入。
可以使用以下兩種方式實現:
1)註釋掉"PermitRootLogin no"。
#PermitRootLogin no
2)將PermitRootLogin改為yes。
PermitRootLogin yes
3、修改Banner配置,去掉連線到系統時,系統提示的歡迎資訊。
註釋掉"Banner"所在的行。
#Banner none
4、修改PasswordAuthentication配置,允許使用者登入時進行密碼鑑權,退出儲存。
將PasswordAuthentication改為yes。
PasswordAuthentication yes
5、重啟sshd服務,並使用root使用者身份重新登入。
#service sshd restart
如果執行命令後返回提示資訊Redirecting to /bin/systemctl restart sshd.service,
則執行如下命令:
#/bin/systemctl restart sshd.service
二、設定作業系統防火牆並過載生效
#firewall-cmd --permanent --zone=trusted --add-source=192.168.57.20/25
#firewall-cmd --permanent --zone=trusted --add-source=10.10.0.20/25
#firewall-cmd --reload
附:
# 開啟防火牆
systemctl start firewalld.service
# 關閉防火牆
systemctl stop firewalld.service
# 防火牆開機啟動
systemctl enable firewalld.service
# 設定開機禁用防火牆
systemctl disable firewalld.service
# 檢視防火牆狀態
firewall-cmd --state
三、系統引數配置
修改/etc/sysctl.conf,新增如下引數:
kernel.sem = 50100 128256000 50100 2560
net.core.netdev_max_backlog = 1000
net.ipv4.tcp_max_syn_backlog = 2048
kernel.core_pattern = /corefile/core.%p.%e
kernel.core_uses_pid = 1
kernel.shmmni = 4096
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.wmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
fs.file-max = 6815744
啟用引數:
#sysctl -p
四、安裝系統包
本次使用ISO介質配置yum源,用於資料庫安裝依賴包的安裝。
在/etc/rc.local檔案末尾寫入一行
mount /dev/cdrom /mnt
保證每次系統啟動的時候都能把光碟裡面的內容掛載到/mnt目錄中。
1、配置yum源
將原先的yum源備份,新建一個yum源
cd /etc/yum.repos.d
mkdir bak
mv redhat* ./bak
vi iso.repo
[root@gaussdb11 yum.repos.d]# cat iso.repo
[rhel-iso]
name=Red Hat Enterprise Linux - Source
baseurl=file:///mnt
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
2、檢視package
#yum list
yum install -y zlib readline gcc
yum install -y python python-devel
yum install perl-ExtUtils-Embed
yum -y install -y readline-devel
yum -y install -y zlib-devel
3、驗證包是否安裝:
rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" | grep -E "zlib|readline|gcc\
|python|python-devel|perl-ExtUtils-Embed|readline-devel|zlib-devel"
五、開始資料庫安裝
1、建立組和使用者:
groupadd -g 1000 dbgrp
useradd -u 1100 -g dbgrp -d /home/gsdb -m -s /bin/bash gsdb
passwd gsdb
2、檔案系統規劃:
#軟體安裝目錄:≤0750
mkdir -p /gsql/gaussdb100
mkdir -p /gsdata/data
mkdir /gslog
chown gsdb:dbgrp /gsql
chown gsdb:dbgrp /gsql/gaussdb100
chown gsdb:dbgrp /gsdata
chown gsdb:dbgrp /gsdata/data
chown gsdb:dbgrp /gslog
[root@gaussdb11 ~]# ln -s /gsql/gaussdb100 /usr/local/gsdb100
[root@gaussdb11 ~]# ls -rlt /usr/local/gsdb100
lrwxrwxrwx. 1 root root 16 Nov 13 11:32 /usr/local/gsdb100 -> /gsql/gaussdb100
3、解壓安裝包:(gsdb使用者操作)
cd /tmp
tar -zxvf GaussDB_100_1.0.0-DATABASE-REDHAT-64bit.tar.gz -C /gsql/
4、安裝資料庫:
cd /gsql/GaussDB_100_1.0.0-DATABASE-REDHAT-64bit
python install.py -U gsdb:dbgrp -R /gsql/gaussdb100 -D /gsdata/data -C LSNR_ADDR=127.0.0.1,192.168.57.20,10.10.0.20 -C LSNR_PORT=1650 -C DATA_BUFFER_SIZE=400M -C SHARED_POOL_SIZE=150M -C TEMP_BUFFER_SIZE=150M
示例:
-U 指定安裝使用者和使用者組。
-R 指定安裝目錄。
-D 指定資料檔案目錄,即GAUSSDATA目錄。
-C 指定配置引數,可以指定多個。如果不指定,則按照/gsdata/data/cfg/zengine.ini中的預設配置項。
-P 在安裝時,如果禁用免密登入,則需要在命令列最後指定此選項。命令列執行過程中,會提示輸入連線資料庫的使用者名稱和密碼,使用者名稱是SYS,
密碼是SYS使用者的出廠密碼Changeme_123。如果開啟免密登入則不需要指定本選項。
[root@gaussdb11 tmp]# ps -ef|grep -i gsdb
root 2403 1452 0 01:00 pts/0 00:00:00 python install.py -U gsdb:dbgrp -R /gsql/gaussdb100 -D /gsdata/data -C LSNR_ADDR=127.0.0.1,192.168.57.20,10.10.0.20 -C LSNR_PORT=1650 -C DATA_BUFFER_SIZE=400M -C SHARED_POOL_SIZE=150M -C TEMP_BUFFER_SIZE=150M
gsdb 2667 1 86 01:01 ? 00:01:10 /gsql/gaussdb100/bin/zengine nomount -D /gsdata/data
root 2712 2711 0 01:01 pts/0 00:00:00 su - gsdb -c /gsql/gaussdb100/bin/zsql / as sysdba 127.0.0.1:1650 -q -D /gsdata/data -f /gsql/gaussdb100/admin/scripts/create_database.sample.sql
gsdb 2713 2712 0 01:01 ? 00:00:00 /gsql/gaussdb100/bin/zsql / as sysdba 127.0.0.1:1650 -q -D /gsdata/data -f /gsql/gaussdb100/admin/scripts/create_database.sample.sql
root 2729 2378 0 01:02 pts/2 00:00:00 grep --color=auto -i gsdb
2)檢視日誌,安裝日誌預設釋放到使用者home目錄下:
安裝日誌示例:
5、編輯資料庫引數(引數值大小請根據實際環境設定),重啟例項生效:
cd /gsdata/data
mkdir cfg
cd cfg
vi zengine.ini
LSNR_PORT = 1650
LSNR_ADDR = 127.0.0.1,192.168.57.20,10.10.0.20
TEMP_BUFFER_SIZE = 150M
DATA_BUFFER_SIZE = 400M
SHARED_POOL_SIZE = 150M
LOG_BUFFER_SIZE = 32M
DBWR_PROCESSES = 2
LOG_BUFFER_COUNT = 6
SESSIONS = 300
/*引數說明:
TEMP_BUFFER_SIZE Temp buffer的大小。
DATA_BUFFER_SIZE 用於快取最近訪問的資料的,資料BUFFER區的大小。
SHARED_POOL_SIZE Shared Pool的大小。
LOG_BUFFER_SIZE Log buffer的大小。Log buffer用於快取Redo日誌。
DBWR_PROCESSES 後臺寫髒頁面執行緒的個數,提高數值可以提高併發效率,但也會消耗較多資源。
LOG_BUFFER_COUNT Log buffer的數量。
LSNR_ADDR 偵聽的伺服器IPV4地址。
LSNR_PORT 服務偵聽的埠號。
SESSIONS 最大併發SESSION數。
*/
6、裝完庫,資料庫預設是啟動的。
su - gsdb
zengine -D /gsdata/data &
[root@gaussdb11 gsdb]# ps -ef|grep -i gsper
root 19406 19285 0 16:32 pts/0 00:00:00 su - gsdb
gsdb 19407 19406 0 16:32 pts/0 00:00:01 -bash
gsdb 20793 1 75 17:03 ? 00:20:06 /gsql/gaussdb100/bin/zengine nomount -D /gsdata/data
gsdb 32697 19407 4 17:28 pts/0 00:00:02 zsql SYS/*@127.0.0.1:1650
root 32752 20478 0 17:29 pts/2 00:00:00 grep --color=auto -i gsper
7、登入資料庫
--連線資料庫:GaussDB 100預設管理員賬戶為SYS,密碼為Changeme_123。
zsql SYS/Changeme_123@127.0.0.1:1650 -q
8、配置PATH:
[gsdb@gaussdb11 ~]$ vi .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
GSDB_DATA=/gsdata/data
export GSDB_DATA
GSDB_HOME=/gsql/gaussdb100
export GSDB_HOME
PATH=$PATH:$HOME/.local/bin:$HOME/bin:/usr/local/gsdb100/bin:$GSDB_HOME/bin
export PATH
--使得PATH生效:
source .bash_profile
[gsdb@gaussdb11 ~]$ which zsql
/gsql/gaussdb100/bin/zsql
9、登入資料庫並修改管理員密碼
[gsdb@gaussdb11 ~]$ zsql SYS/Changeme_123@127.0.0.1:1650 -q
connected.
SQL> ALTER USER SYS IDENTIFIED BY Gsdb_123 REPLACE Changeme_123;
Succeed.
10、建立使用者及資料插入測試
1)建立測試使用者及對應表空間
2)建立測試表及資料插入測試
插入734W資料耗時79.674S,本次安裝測試是在筆記本上的虛擬機器上進行的。不能作為生產庫資料插入速度參考。
附:
當在centos使用redhat平臺gaussdb100安裝包進行安裝時,會報錯:
解決方法:
註釋掉install.py檔案中的平臺檢查指令:
cd /gsql/GaussDB_100_1.0.0-DATABASE-REDHAT-64bit
vi install.py
# if self.run_pkg_name.find(distname.upper().replace("OS", "")) == -1:
# logExit("Run package %s.tar.gz is inconsistent with os system %s." % (self.run_pkg_name, distname))
gaussDB單機版的登陸介面和使用習慣是不是似曾相識 ,感覺還是熟悉的問道 。
後續gaussDB分散式安裝短文會繼續更新,大家一起玩兒起來,有問題一起溝通交流。
微信公眾號:IT那活兒
微信公眾號對應文章地址:https://mp.weixin.qq.com/s/SD1xdN31uuYvGwiE3m0u1w
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25964700/viewspace-2668114/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 華為GaussDB資料庫之Yukon安裝與使用資料庫
- 華為GaussDB T資料庫主備物理複製搭建過程資料庫
- 華為GaussDB資料庫(單機版)在ARM環境下的安裝指南資料庫
- GaussDB: db2->gaussdb 函式轉換DB2函式
- GaussDB資料庫SQL系列-LOCK TABLE資料庫SQL
- [開源] .Net 使用 ORM 訪問 華為GaussDB資料庫ORM資料庫
- DTCC 2020:華為雲GaussDB加速企業數字變革
- GaussDB技術解讀系列:效能調優
- 華為雲GaussDB(DWS)記憶體知識點,你知道嗎?記憶體
- 華為雲峰會2024,GaussDB揚帆出海,給世界一個更優選擇
- 華為雲王傳廷 融合普惠的雲數倉——解析華為雲GaussDB(DWS) 3.0
- GaussDB資料庫SQL系列-動態語句資料庫SQL
- 簡單瞭解一下GaussDB
- 華為雲GaussDB NoSQL雲原生多模資料庫的超融合實踐SQL資料庫
- 華為雲GaussDB(for Influx):讓智慧電網時序資料處理更高效UX
- 華為雲蘇光牛 自主創新,北坡攀登,GaussDB給世界一個更優選擇
- GaussDB技術解讀系列:高安全之密態等值
- GaussDB T 1.0.2單機環境TPC-C之BenchmarkSQL效能測試SQL
- 華為雲資料庫核心專家為您揭秘:GaussDB(for MySQL)並行查詢有多快?資料庫MySql並行
- 華為周躍峰:揭秘“關於GaussDB資料庫的五大謊言”資料庫
- 自建資料庫太麻煩?華為雲資料庫GaussDB既省心又省力資料庫
- 在Docker中安裝GaussDB的ODBC驅動並新增Python測試程式碼DockerPython
- ignite系列之20-資料來源擴充套件GaussDB套件
- GaussDB技術解讀系列:運維自動駕駛探索運維自動駕駛
- 共助資料自主創新生態|DataPipeline與華為雲GaussDB完成相容互認證API
- 華為雲PB級資料庫GaussDB(for Redis)揭祕第七期:高斯Redis與強一致資料庫Redis
- GaussDB T 1.0.2分散式叢集TPC-C之BenchmarkSQL效能測試分散式SQL
- 墨天輪國產資料庫沙龍 | 胡彥軍:華為GaussDB遷移工具解密資料庫解密
- 技術創新+開放共贏 華為雲GaussDB加速企業數字化轉型
- 即時通訊系統為什麼選擇GaussDB(for Redis)?Redis
- 從Oracle DBA出發,走進GaussDB的世界 - 雲和恩墨大講堂GaussDB專題Oracle
- GaussDB技術解讀系列:資料庫遷移創新實踐資料庫
- 華為雲GaussDB打造金融行業堅實資料底座,共創數字金融新未來行業
- GaussDB(DWS)運維利刃:TopSQL工具解析運維SQL
- 瞭解GaussDB SQL中CASE表示式SQL
- 【GaussDB(for MySQL)】 Big IN查詢最佳化MySql
- GaussDB(分散式)例項故障處理分散式
- 深度詳解GaussDB bufferpool快取策略快取