準備工作
更新時間 2025-02-05 09:37:02
最近更新時間: 2025-02-05 09:37:02
分享文章
在部署天翼云TeleDB數據庫前,您需要獲取許可證文件、完成環境初始化并進行相關的數據庫參數配置。
-
獲取許可證文件。
說明請您聯系天翼云商務代表獲取許可證文件。
-
環境初始化。
-
掛載磁盤,對所有機器規劃掛載目錄,建議您控制臺主機用app目錄,實例主機用data目錄。
- 執行如下命令,格式化數據盤。若您使用的磁盤不是新盤需格式化數據盤。若您使用的是新盤則可跳過該步驟。
mkfs.xfs -f -i attr=2 -l lazy-count=1,sectsize=4096 -b size=4096 -d sectsize=4096 -L data /dev/vdb - 執行如下命令,創建根目錄文件,提供給掛載數據盤使用。
mkdir -p /app - 執行如下命令,掛載數據盤。
mount /dev/vdb /app - 執行如下命令,寫入磁盤配置文件,開機自動掛載磁盤。
echo "/dev/vdb /app xfs defaults 0 0" >> /etc/fstab
- 執行如下命令,格式化數據盤。若您使用的磁盤不是新盤需格式化數據盤。若您使用的是新盤則可跳過該步驟。
-
創建部署使用用戶teledb
-
執行如下命令,創建用戶(創建部署的用戶是teledb,不是teledbx)
groupadd -f teledb ????????????????????????????????????????????? useradd -g teledb teledb -
執行如下命令,設置密碼。
passwd ?teledb說明由于安裝teledbX時會將#當作特殊字符,不被識別,所以設置的密碼中不包含#。
-
初始化系統參數。
su - teledb cd /etc/security在/etc/security/limits.conf文件中最后一部分,添加如下內容。
teledb soft nofile 131072 teledb hard memlock 128849018880 teledb soft memlock 128849018880 teledb soft core 1024000 teledb hard core 1024000 teledb hard nproc unlimited teledb soft nproc unlimited teledb hard nofile 131072 teledb hard stack unlimited teledb soft stack unlimited -
執行如下命令。
echo vm.swappiness=10 >> /etc/sysctl.conf sysctl -w vm.swappiness=10 echo vm.min_free_kbytes=102400 >> /etc/sysctl.conf sysctl -w vm.min_free_kbytes=102400 -
進入/etc/sudoers文件,添加權限.
在root ALL=(ALL)ALL 一行下面添加如下內容。
teledb ALL=(ALL) ????NOPASSWD:ALL -
修改掛載目錄權限.
執行如下命令,修改成可讀寫運行權限
sudo chmod 777 /app執行如下命令,修改/app目錄下文件所屬用戶。
sudo chown -R teledb:teledb /app
-
-
(可選)創建軟連接。
執行如下命令創建軟連接(安裝dcp主機不需要執行該操作, 安裝teledb控制臺的主機以及teledb實例主機需要執行該操作。)
cd /usr/local/bin ln -s /usr/sbin/ip ?ip ln -s /usr/sbin/sysctl ?sysctl ln -s /usr/sbin/userdel userdel ln -s /usr/sbin/useradd useradd
-
-
數據庫參數配置
-
DN節點參數配置參考以下參數設置,其中shared_buffers根據服務器配置調整,建議為服務器總內存的1/4,且上限不超過64GB。
服務器總內存小于512G時,根據情況適當下調以下參數,避免出現OOM。
shared_buffers = 64GB effective_cache_size = 128GB work_mem = 100MB maintenance_work_mem = 16GB以下是512G內存服務器的DN節點參數配置建議:
max_connections = 5000 max_pool_size = 6000 commit_delay = 20 commit_siblings = 10 shared_buffers = 64GB effective_cache_size = 128GB work_mem = 100MB maintenance_work_mem = 16GB dynamic_shared_memory_type = posix bgwriter_delay = 10ms bgwriter_lru_maxpages = 1000 bgwriter_lru_multiplier = 10.0 effective_io_concurrency = 200 wal_level = replica wal_buffers = 16MB wal_writer_delay = 10ms min_wal_size = 60GB max_wal_size = 200GB synchronous_commit = local full_page_writes = off fsync = off checkpoint_timeout = 30min checkpoint_completion_target = 0.9 effective_cache_size = 128GB update_process_title = off track_activities = off autovacuum = on autovacuum_max_workers = 3 log_statement = 'none' max_parallel_workers_per_gather = 0 pooler_scale_factor = 64 shared_queues = 512 enable_material = off vacuum_delta = 300 min_free_size=300 mls_check_datamask=off -
CN節點參數配置
參考以下參數設置:
max_connections = 5000 max_pool_size = 6000 commit_delay = 20 commit_siblings = 10 shared_buffers = 6GB effective_cache_size = 16GB work_mem = 100MB maintenance_work_mem = 4GB dynamic_shared_memory_type = posix bgwriter_delay = 10ms bgwriter_lru_maxpages = 1000 bgwriter_lru_multiplier = 10.0 effective_io_concurrency = 200 random_page_cost = 1.1 wal_level = replica wal_buffers = 16MB wal_writer_delay = 10ms min_wal_size = 1GB max_wal_size = 3GB synchronous_commit = off full_page_writes = on fsync = on checkpoint_timeout = 30min checkpoint_completion_target = 0.9 update_process_title = off track_activities = off autovacuum = on autovacuum_max_workers = 2 log_statement = 'none' max_parallel_workers_per_gather = 0 pooler_scale_factor = 64 shared_queues = 512 enable_material = off vacuum_delta = 300 persistent_datanode_connections = on log_destination = 'stderr' logging_collector = on log_directory = 'log' min_free_size=300
-