本文内容来自YashanDB官网,原文内容请见 https://doc.yashandb.com/yashandb/23.3/zh/%E5%AE%89%E8%A3%85%...

本文以典型规格(2台服务器,1共享存储且包含3个及以上LUN)为例,介绍共享集群部署形态的安装步骤。

执行安装部署前,请以安装用户(yashan)登录192.168.1.2服务器,并进入/home/yashan/install安装目录。

$ cd /home/yashan/install

Copied!

  1. 执行yasboot package命令生成配置文件,命令详细参数可查阅yasboot
 $ ./bin/yasboot package ce gen --cluster yashandb -u yashan -p password --ip 192.168.1.2,192.168.1.3 --port 22 --install-path /data/yashan/yasdb_home --data-path /data/yashan/yasdb_data --begin-port 1688 --node 2 --data /dev/yas/datadisk --disk-found-path /dev/yas  --system-data /dev/yas/systemdisk

Copied!

参数说明
--cluster指定数据库集群名称,该名称也将作为初始数据库的名称(database name)
--port指定SSH服务端口
--install-path指定数据库安装路径
--data-path指定数据存放目录
--begin-port指定第一个数据库实例的数据库监听端口
--data指定绑定的数据盘路径
--disk-found-path指定磁盘发现路径
--system-data指定绑定的系统数据盘路径

执行完毕后,当前目录下将生成yashandb.toml和hosts.toml两个配置文件,可手动修改,但不建议删除文件中任何行,否则可能导致后续安装过程报错,或所搭建的环境后续无法进行扩展配置。

  • yashandb.toml:数据库集群的配置文件。
  • hosts.toml:服务器的配置文件。
-rw-------. 1 yashan yashan       444 Aug 31 16:27 hosts.toml
-rw-------. 1 yashan yashan       708 Aug 31 16:27 yashandb.toml

Copied!

  1. 根据实际需要调整yashandb.toml配置文件中的安装参数,可在group级别设置YashanDB的所有建库参数,可在node级别设置YashanDB的所有配置参数

cluster = "yashandb"    
create_simple_schema = false    
uuid = "64f1568f4f6b033e58a015a833f0ad9e"    
yas_type = "CE"    
disk_found_path = "/dev/yas"

[[group]]
  group_type = "ce" 
  name = "ceg1" 
  database_role = "primary"
  [group.config]    
    CHARACTER_SET = "utf8"
    ISARCHIVELOG = true
    REDO_FILE_NUM = 4
    REDO_FILE_SIZE = "128M"
  [[group.diskgroup]]
    au_size = "1M"
    disk_size = ""
    name = "DG0"
    redundancy = "EXTERNAL"
    yfs_force_create = false

    [[group.diskgroup.failgroup]]
      disk = ["/dev/yas/datadisk"]
      name = "DG0_0"


  [[group.node]]    
    data_path = "/data/yashan/yasdb_data"   
    hostid = "host0001" 
    role = 1    
    [group.node.config]  
      CLUSTER_DATABASE = "TRUE"
      CLUSTER_INTERCONNECT = "192.168.1.2:1689"
      DATA_BUFFER_SIZE = "1G"
      HA_ELECTION_TIMEOUT = 18
      HA_HEARTBEAT_INTERVAL = 6
      INTER_URL = "192.168.1.2:1788"
      LISTEN_ADDR = "192.168.1.2:1688"
      REDO_BUFFER_PARTS = 8
      REDO_BUFFER_SIZE = "64M"
      RUN_LOG_FILE_PATH = "/data/yashan/yasdb_home/yashandb/23.3.1.100/log/yashandb/ce-1-1/run"
      SHARE_POOL_SIZE = "1G"
      SLOW_LOG_FILE_PATH = "/data/yashan/yasdb_home/yashandb/23.3.1.100/log/yashandb/ce-1-1/slow"
      SQL_POOL_PARTS = 8
  
  [[group.node]]
    data_path = "/data/yashan/yasdb_data"
    hostid = "host0002"
    role = 2
    [group.node.config]
      CLUSTER_DATABASE = "TRUE"
      CLUSTER_INTERCONNECT = "192.168.1.3:1689"
      DATA_BUFFER_SIZE = "1G"
      HA_ELECTION_TIMEOUT = 18
      HA_HEARTBEAT_INTERVAL = 6
      INTER_URL = "192.168.1.3:1788"
      LISTEN_ADDR = "192.168.1.3:1688"
      REDO_BUFFER_PARTS = 8
      REDO_BUFFER_SIZE = "64M"
      RUN_LOG_FILE_PATH = "/data/yashan/yasdb_home/yashandb/23.3.1.100/log/yashandb/ce-1-2/run"
      SHARE_POOL_SIZE = "1G"
      SLOW_LOG_FILE_PATH = "/data/yashan/yasdb_home/yashandb/23.3.1.100/log/yashandb/ce-1-2/slow"
      SQL_POOL_PARTS = 8
    [group.ycsconfig]
        DISK_HB_KEEP_ALIVE = 60
        LOG_LEVEL = "DEBUG"
        LOG_NUMBER = 10
        LOG_SIZE = "20M"
        NETWORK_HB_TIMEOUT = 30
        RESTART_INTERVAL = 30
        RESTART_TIMES = 3
        VOTING_FILE_NAME = "+SYSTEM/voting"
        WAIT_STOP_FIN_TIME = 90
        YCR_FILE_NAME = "+SYSTEM/ycr"
    [group.yfsconfig]
        FILE_SIZE = "100M"
        SHM_POOL_SIZE = "2G"
        SYS_AREA_SIZE = "1G"
    [group.systemdiskgroup]
        au_size = "1M"
        disk_size = ""
        name = "SYSTEM"
        redundancy = "EXTERNAL"
        yfs_force_create = true
    
        [[group.systemdiskgroup.failgroup]]
            disk = ["/dev/yfs/systemdisk"]
            name = "SDG0_0"


Copied!

步骤2:执行安装


场景一:直接安装。

$ ./bin/yasboot package install -t hosts.toml -i yashandb-23.3.1.100-linux-x86_64.tar.gz 

Copied!

场景二:如需使用DBLINK功能以及更丰富的内置函数(例如LSFA\_LISTAGG),需先下载plugin插件包并在安装命令中指定--plugin参数。安装完成后,无法单独安装该插件包

$ ./bin/yasboot package install -t hosts.toml -i yashandb-23.3.1.100-linux-x86_64.tar.gz --plugin yashandb-plugins-all-23.3.1.100-linux-x86_64.tar.gz

Copied!

步骤3:数据库部署


  1. 执行如下命令,部署数据库:
$ ./bin/yasboot cluster deploy -t yashandb.toml --yfs-force-create

Copied!

Note:

可通过指定-d, --child参数展示任务以及子任务信息,从而了解部署进度。

返回如下信息表示已成功部署。

task completed, status: SUCCESS

Copied!

  1. 执行如下命令,重启数据库:
$ ./bin/yasboot cluster restart -c yashandb

Copied!

步骤4:配置环境变量


以安装用户登录到每个服务器上,执行如下命令生效环境变量。


$ cd /data/yashan/yasdb_home/yashandb/23.3.1.100/conf


$ cat yashandb.bashrc >> ~/.bashrc
$ source ~/.bashrc

Copied!

步骤5:检查安装结果


若连接报错或执行SQL语句报错,请根据错误提示信息检查安装步骤,或咨询我们的技术支持。

  1. YashanDB不提供系统初始口令,需使用yasboot工具设置数据库sys用户的密码,以安装用户登录到服务器并执行如下命令设置密码。
$ yasboot cluster password set -n newpasswd -c yashandb

Copied!

  1. 执行如下命令,查看数据库状态。
$ yasboot cluster status -c yashandb -d
hostid   | node_type | nodeid | pid   | instance_status | database_status | database_role | listen_address     | data_path                                          
--------------------------------------------------------------------------------------------------------------------------------------------------------------
host0001 | ce        | 1-1:1  | 19513 | open            | normal          | primary       | 192.168.1.2:1688   | /data/yashan/yasdb_data/ce-1-1 
----------+-----------+--------+-------+-----------------+-----------------+---------------+--------------------+---------------------------------------------
host0002 | ce        | 1-2:2  | 19608 | open            | normal          | primary       | 192.168.1.3:1688   | /data/yashan/yasdb_data/ce-1-2 
----------+-----------+--------+-------+-----------------+-----------------+---------------+--------------------+---------------------------------------------

Copied!

  1. 使用yasql工具连接数据库,查看实例状态。
$ yasboot sql -d sys/password@192.168.1.2:1688
SQL> SELECT STATUS FROM V$INSTANCE;

STATUS        
------------- 
OPEN        

SQL> SELECT database_name FROM v$database;

DATABASE_NAME                                                    
---------------------------------------------------------------- 
yashandb     

Copied!

  1. (可选)创建数据库用户并赋权,更多操作请查阅用户管理
$ yasql sys/password@192.168.1.3:1688
SQL> CREATE USER sales IDENTIFIED BY sales;

SQL> GRANT CONNECT TO SALES;

Copied!

Note:

如需开启monit功能,可参考守护进程完成相关配置。


YashanDB
1 声望0 粉丝

崖山数据库系统YashanDB是深圳计算科学研究院自主设计研发的新型数据库管理系统,融入原创的有界计算、近似计算、并行可扩展和跨模融合计算理论,可满足金融、政企、能源等关键行业对高性能、高并发及高安全性的...