GaussDB T 修改主機IP的那點事
由于筆者有輕微強迫癥,自己測試環境幾十個虛擬機也要劃分網段管理,所以對之前安裝的GaussDB 單機環境,進行了主機IP變更。變更后壞了,起不來了。所以就有了這篇文章。
修改前:192.168.0.11/16
修改后:192.168.10.5/16
啟動報錯:
[root@G0 ~]# su - omm
Last login: Mon Dec 23 14:13:19 CST 2019 on pts/1
[omm@G0 ~]$ cd opt/gaussdb/gaussdb100/bin/
[omm@G0 bin]$ zctl.py -t start
Can not get instance '/opt/gaussdb/data' process pid
[omm@G0 bin]$
跟蹤實例啟動過程日志
[root@G0 run]# tailf ?opt/gaussdb/data/log/run/zengine.rlog
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|77309418914|INFO>[LOG] file '/opt/gaussdb/data/log/zenith_alarm.log' is added [srv_param.c:488]
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|7586|INFO>[LOG] file '/opt/gaussdb/data/log/run/zengine.rlog' is added [cm_log.c:643]
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|7586|INFO>[PARAM] LSNR_ADDR ? ? ? ? ? ?= 127.0.0.1,192.168.0.11
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|7586|INFO>[PARAM] LSNR_PORT ? ? ? ? ? ?= 1888
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|7586|INFO>[PARAM] DATA_BUFFER_SIZE ? ? = 500m
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|7586|INFO>[PARAM] SHARED_POOL_SIZE ? ? = 150M
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|7586|INFO>[PARAM] LOG_BUFFER_SIZE ? ? ?= 64M
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|7586|INFO>[PARAM] LOG_BUFFER_COUNT ? ? = 8
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|7586|INFO>[PARAM] TEMP_BUFFER_SIZE ? ? = 150M
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|7586|INFO>[PARAM] SESSIONS ? ? ? ? ? ? = 1500
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|7586|INFO>[PARAM] CONTROL_FILES ? ? ? ?= (/opt/gaussdb/data/data/cntl1, opt/gaussdb/data/data/cntl2, opt/gaussdb/data/data/cntl3)
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|7586|INFO>[PARAM] DBWR_PROCESSES ? ? ? = 8
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|7586|INFO>[PARAM] INSTANCE_NAME ? ? ? ?= zenith
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|7586|INFO>[PARAM] ENABLE_SYSDBA_LOGIN ?= TRUE
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|206158437794|INFO>starting instance(normal)
UTC+8 2019-12-25 12:44:55.948|ZENGINE|00000|7587|INFO>timer thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7601|INFO>rollback thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7603|INFO>rmon thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7604|INFO>job master thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7602|INFO>rollback thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7598|INFO>smon thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7593|INFO>dbwr thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7594|INFO>dbwr thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7589|INFO>dbwr thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7590|INFO>dbwr thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7591|INFO>dbwr thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7595|INFO>dbwr thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7596|INFO>dbwr thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7597|INFO>ckpt thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7600|INFO>index page recycle thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7592|INFO>dbwr thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7599|INFO>stats thread started
UTC+8 2019-12-25 12:44:55.996|ZENGINE|00000|7588|INFO>lgwr thread started
UTC+8 2019-12-25 12:44:56.009|ZENGINE|00000|7586|INFO>local ip: 127.0.0.1
UTC+8 2019-12-25 12:44:56.009|ZENGINE|00000|7586|INFO>local ip: 192.168.0.11
UTC+8 2019-12-25 12:44:56.015|ZENGINE|00000|7605|INFO>reactor thread started
UTC+8 2019-12-25 12:44:59.021|ZENGINE|00000|18446743974925311394|ERROR>GS-00310 : Failed to bind socket for 192.168.0.11:1888, error code 99 [cs_listener.c:207]
UTC+8 2019-12-25 12:44:59.021|ZENGINE|00000|7586|ERROR>failed to create lsnr sockets for listener type 1
UTC+8 2019-12-25 12:44:59.021|ZENGINE|00000|206158437794|ERROR>failed to start lsnr for LSNR_ADDR
UTC+8 2019-12-25 12:44:59.204|ZENGINE|00000|7601|INFO>rollback thread closed
UTC+8 2019-12-25 12:44:59.405|ZENGINE|00000|7602|INFO>rollback thread closed
UTC+8 2019-12-25 12:44:59.605|ZENGINE|00000|7598|INFO>smon thread closed
UTC+8 2019-12-25 12:44:59.807|ZENGINE|00000|7603|INFO>rmon thread closed
UTC+8 2019-12-25 12:45:00.007|ZENGINE|00000|7599|INFO>stats thread closed
UTC+8 2019-12-25 12:45:00.998|ZENGINE|00000|7604|INFO>job master thread closed
UTC+8 2019-12-25 12:45:00.998|ZENGINE|00000|7600|INFO>index_recycle thread closed
UTC+8 2019-12-25 12:45:01.009|ZENGINE|00000|7597|INFO>ckpt thread closed
UTC+8 2019-12-25 12:45:01.009|ZENGINE|00000|7589|INFO>dbwr thread closed
UTC+8 2019-12-25 12:45:01.009|ZENGINE|00000|7590|INFO>dbwr thread closed
UTC+8 2019-12-25 12:45:01.009|ZENGINE|00000|7591|INFO>dbwr thread closed
UTC+8 2019-12-25 12:45:01.009|ZENGINE|00000|7592|INFO>dbwr thread closed
UTC+8 2019-12-25 12:45:01.009|ZENGINE|00000|7593|INFO>dbwr thread closed
UTC+8 2019-12-25 12:45:01.009|ZENGINE|00000|7594|INFO>dbwr thread closed
UTC+8 2019-12-25 12:45:01.009|ZENGINE|00000|7595|INFO>dbwr thread closed
UTC+8 2019-12-25 12:45:01.009|ZENGINE|00000|7596|INFO>dbwr thread closed
UTC+8 2019-12-25 12:45:01.211|ZENGINE|00000|7588|INFO>lgwr thread closed
UTC+8 2019-12-25 12:45:01.230|ZENGINE|00000|7605|INFO>reactor thread closed
UTC+8 2019-12-25 12:45:01.230|ZENGINE|00000|13847455598648738|ERROR>failed to start lsnr
UTC+8 2019-12-25 12:45:01.230|ZENGINE|00000|7586|ERROR>Instance Startup Failed
核心報錯信息:
UTC+8 2019-12-25 12:44:59.021|ZENGINE|00000|18446743974925311394|ERROR>GS-00310 : Failed to bind socket for 192.168.0.11:1888, error code 99 [cs_listener.c:207]
UTC+8 2019-12-25 12:44:59.021|ZENGINE|00000|7586|ERROR>failed to create lsnr sockets for listener type 1
UTC+8 2019-12-25 12:44:59.021|ZENGINE|00000|206158437794|ERROR>failed to start lsnr for LSNR_ADDR
如上可知,DB在啟動過程中依舊請求了原來的IP,那么是哪里記錄了。根據數據庫啟動不同階段請求文件類型,判斷是參數文件。
查看實例參數文件,果然變量LSNR_ADDR記錄了原來的IP:
[omm@G0 ~]$ vi opt/gaussdb/data/cfg/zengine.ini
LOG_BUFFER_SIZE = 64M
DBWR_PROCESSES = 8
LOG_BUFFER_COUNT = 8
SESSIONS = 1500
INSTANCE_NAME = zenith
LSNR_ADDR?=?127.0.0.1,192.168.0.11
LSNR_PORT = 1888
ENABLE_SYSDBA_LOGIN = TRUE
SHARED_POOL_SIZE = 150M
TEMP_BUFFER_SIZE = 150M
DATA_BUFFER_SIZE = 500m
CONTROL_FILES = (/opt/gaussdb/data/data/cntl1, opt/gaussdb/data/data/cntl2, opt/gaussdb/data/data/cntl3)
[omm@G0 ~]$
這里我們將其修改為新的ip(192.168.10.5)。
修改完成后重新啟庫
[omm@G0 bin]$ zctl.py -t start
Successfully started instance.
[omm@G0 bin]$
跟蹤啟動日志,可見,數據庫正常啟動。
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|77309418988|INFO>[LOG] file '/opt/gaussdb/data/log/zenith_alarm.log' is added [srv_param.c:488]
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|7660|INFO>[LOG] file '/opt/gaussdb/data/log/run/zengine.rlog' is added [cm_log.c:643]
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|7660|INFO>[PARAM] LSNR_ADDR ? ? ? ? ? ?= 127.0.0.1,192.168.10.5
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|7660|INFO>[PARAM] LSNR_PORT ? ? ? ? ? ?= 1888
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|7660|INFO>[PARAM] DATA_BUFFER_SIZE ? ? = 500m
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|7660|INFO>[PARAM] SHARED_POOL_SIZE ? ? = 150M
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|7660|INFO>[PARAM] LOG_BUFFER_SIZE ? ? ?= 64M
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|7660|INFO>[PARAM] LOG_BUFFER_COUNT ? ? = 8
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|7660|INFO>[PARAM] TEMP_BUFFER_SIZE ? ? = 150M
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|7660|INFO>[PARAM] SESSIONS ? ? ? ? ? ? = 1500
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|7660|INFO>[PARAM] CONTROL_FILES ? ? ? ?= (/opt/gaussdb/data/data/cntl1, opt/gaussdb/data/data/cntl2, opt/gaussdb/data/data/cntl3)
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|7660|INFO>[PARAM] DBWR_PROCESSES ? ? ? = 8
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|7660|INFO>[PARAM] INSTANCE_NAME ? ? ? ?= zenith
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|7660|INFO>[PARAM] ENABLE_SYSDBA_LOGIN ?= TRUE
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|206158437868|INFO>starting instance(normal)
UTC+8 2019-12-25 12:46:37.353|ZENGINE|00000|7661|INFO>timer thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7674|INFO>index page recycle thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7676|INFO>rollback thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7677|INFO>rmon thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7675|INFO>rollback thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7671|INFO>ckpt thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7666|INFO>dbwr thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7667|INFO>dbwr thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7662|INFO>lgwr thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7663|INFO>dbwr thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7664|INFO>dbwr thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7668|INFO>dbwr thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7669|INFO>dbwr thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7670|INFO>dbwr thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7673|INFO>stats thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7678|INFO>job master thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7665|INFO>dbwr thread started
UTC+8 2019-12-25 12:46:37.403|ZENGINE|00000|7672|INFO>smon thread started
UTC+8 2019-12-25 12:46:37.405|ZENGINE|00000|7660|INFO>local ip: 127.0.0.1
UTC+8 2019-12-25 12:46:37.405|ZENGINE|00000|7660|INFO>local ip: 192.168.10.5
UTC+8 2019-12-25 12:46:37.418|ZENGINE|00000|7679|INFO>reactor thread started
UTC+8 2019-12-25 12:46:37.418|ZENGINE|00000|7680|INFO>tcp-lsnr thread started
UTC+8 2019-12-25 12:46:37.418|ZENGINE|00000|7681|INFO>uds-lsnr thread started
UTC+8 2019-12-25 12:46:37.418|ZENGINE|00000|7660|INFO>SSL disabled: server certificate or private key file is not available.
UTC+8 2019-12-25 12:46:37.418|ZENGINE|00000|7660|INFO>start to alter database MOUNT
UTC+8 2019-12-25 12:46:37.713|ZENGINE|00000|7660|INFO>[ARCH] Init arch is_archive 0
UTC+8 2019-12-25 12:46:37.713|ZENGINE|00000|7660|INFO>[ARCH] Initialization complete
UTC+8 2019-12-25 12:46:37.713|ZENGINE|00000|7660|INFO>sucessfully alter database MOUNT
UTC+8 2019-12-25 12:46:37.713|ZENGINE|00000|206158437868|INFO>start to alter database OPEN
UTC+8 2019-12-25 12:46:38.491|ZENGINE|00000|140733193395692|INFO>[ARCH] Start ARCH thread for ARCHIVE_DEST_1[/opt/gaussdb/data/archive_log]
UTC+8 2019-12-25 12:46:38.491|ZENGINE|00000|11909436955911265772|INFO>The last shutdown is a inconsistent shutdown
UTC+8 2019-12-25 12:46:38.491|ZENGINE|00000|7660|INFO>database start recovery
UTC+8 2019-12-25 12:46:38.491|ZENGINE|00000|7660|INFO>recovery from file:2,point:4065140,lfn:8278
UTC+8 2019-12-25 12:46:38.491|ZENGINE|00000|7660|INFO>recovery expected least end with file:2,point:4065280,lfn:8318
UTC+8 2019-12-25 12:46:39.735|ZENGINE|00000|140733193395692|INFO>[RCY] recovery real end with file:2,point:4065396,lfn:8350
UTC+8 2019-12-25 12:46:39.735|ZENGINE|00000|140733193395692|INFO>[RCY] current lfn 8350, rcy point lfn 8278, consistent point 8318, lrp point lfn 8318
UTC+8 2019-12-25 12:46:40.220|ZENGINE|00000|7675|INFO>rollback thread closed
UTC+8 2019-12-25 12:46:40.220|ZENGINE|00000|7676|INFO>rollback thread closed
UTC+8 2019-12-25 12:46:40.258|ZENGINE|00000|140716013526508|INFO>no valid standby configuration
UTC+8 2019-12-25 12:46:40.258|ZENGINE|00000|7660|INFO>[DB] sse42 available 1
UTC+8 2019-12-25 12:46:40.258|ZENGINE|00000|7660|INFO>sucessfully alter database OPEN
UTC+8 2019-12-25 12:46:40.273|ZENGINE|00000|7660|INFO>instance started
到這里,數據庫就啟動成功了。
但好學的朋友一定會問,這個變量LSNR_ADDR是干嘛的?
官方文檔中的描述是這樣的:
LSNR_ADDR 參數描述:設置所偵聽的服務器的IP地址。
取值范圍:有效的IPv4或IPV6地址。
默認值:127.0.0.1
說直白一點就是記錄數據庫的監聽地址,最多支持8個IP。連接數據庫的時候可以指定該變量中諸多ip的一個。如下查詢結果,可知該變量是支持在線更改,但是重啟才會生效。
SQL>?select?name,value,RUNTIME_VALUE,DEFAULT_VALUE,ISDEFAULT,MODIFIABLE,EFFECTIVE
from dv_parameters
where?name?like?'LSNR_ADDR';
NAME ? ? ? VALUE ? ? ? ? ? ? ? ? ? ?RUNTIME_VALUE ? ? ? ? ? ?DEFAULT_VALUE ? ISDEFAULT ? ? ? ? ? ?MODIFIABLE ? ? ? ? ? EFFECTIVE
---------- ------------------------ ------------------------ --------------- -------------------- -------------------- ----------
LSNR_ADDR ?127.0.0.1,192.168.10.11 ?127.0.0.1,192.168.10.11 ?127.0.0.1 ? ? ? FALSE ? ? ? ? ? ? ? ?TRUE ? ? ? ? ? ? ? ? reboot
1?rows?fetched.
SQL>
關注國產,關注未來?我是Kevin YAN!
參考:
1. 《Gauss100官方文檔》
2.? https://support.huawei.com
3. 《HCIP-GaussDB-OLTP培訓教材.pdf》
轉自墨天輪
GaussDB
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。