rpm的polardb,创建一个服务自启动。为什么自启动会失败,是目前不支持吗?

rpm的polardb,创建一个服务自启动。为什么自启动会失败,是目前不支持吗?看起来是一直没有给响应,导致systemd 认为超时了,把进程都kill掉了。5e45567865cb066323cf6c9ed57ffcd1_.png

展开
收起
三分钟热度的鱼 2024-05-03 17:28:00 74 发布于安徽 分享
分享
版权
举报
1 条回答
写回答
取消 提交回答
  • 我在 https://github.com/ApsaraDB/PolarDB-for-PostgreSQL/releases 下载了 PolarDB-15.12.3.0-e1e6d85b.el9.x86_64.rpm 二进制安装包

    yum install PolarDB-15.12.3.0-e1e6d85b.el9.x86_64.rpm
    ### 创建用户组
    groupadd polardb
    
    ### 在用户组polardb下创建用户
    useradd -m -s /bin/bash -g polardb polardb
    
    ### polardb禁止使用root用户跑数据库, 因此必须给polardb用户添加sudo权限
    # echo "用户名 ALL=(ALL) ALL" >> /etc/sudoers
    echo "polardb ALL=(ALL) ALL" >> /etc/sudoers
    
    mkdir -p /data/polardb-postgres-15
    chown polardb /data/polardb-postgres-15
    chown -R polardb:polardb /data/polardb-postgres-15
    chmod -R 0700 /data/polardb-postgres-15
    
    ### 配置环境变量
    echo "#set polardb_pg environment" > /etc/profile.d/polardb_pg.sh
    echo "export PATH=\$PATH:/u01/polardb_pg/bin/" >> /etc/profile.d/polardb_pg.sh
    chmod 755 /etc/profile.d/polardb_pg.sh
    
    su polardb
    /u01/polardb_pg/bin/initdb -D /data/polardb-postgres-15 -E UTF8 --locale=C --data-checksums -U polardb
    exit
    
    tee /lib/systemd/system/polarpg.service <<-'EOF'
    [Unit]
    Description=polardb postgres 15
    After=network-online.target
    
    [Service]
    User=polardb
    Group=polardb
    Type=simple
    #ExecStart=/u01/polardb_pg/bin/pg_ctl -D /data/polardb-postgres-15 -l 运行日志目录 start
    ExecStart=/u01/polardb_pg/bin/pg_ctl -D /data/polardb-postgres-15 -l /data/polardb-postgres-15/polar-run.log start
    ExecReload=/bin/kill -s HUP $MAINPID
    TimeoutStartSec=5
    RestartSec=5
    Restart=always
    
    [Install]
    WantedBy=multi-user.target
    EOF
    
    systemctl daemon-reload
    
    systemctl enable polarpg.service
    
    systemctl start polarpg
    

    Systemctl设置以polardb用户启动数据库,一直失败。

    我切到polardb用户,手动执行命令却没问题

    ···
    /u01/polardb_pg/bin/pg_ctl -D /data/polardb-postgres-15 -l /data/polardb-postgres-15/polar-run.log start
    ···

    2025-03-18 19:55:28 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论

PolarDB 分布式版 (PolarDB for Xscale,简称“PolarDB-X”) 采用 Shared-nothing 与存储计算分离架构,支持水平扩展、分布式事务、混合负载等能力,100%兼容MySQL。 2021年开源,开源历程及更多信息访问:OpenPolarDB.com/about

还有其他疑问?
咨询AI助理