• MariaDB 多实例启动


    【MariaDB 多实例(服务)启动】

    计划开放端口3307、3308:
    服务名 端口 文件夹

    mariadb3307 3307 /data/mariadb/3307
    mariadb3308 3308 /data/mariadb/3308

    1.建立各个实例的文件夹

    mkdir -p /data/mariadb/3307/etc
    mkdir -p /data/mariadb/3308/etc

    #mkdir -p /data/mariadb/3307/etc/my.cnf.d #第4步生成数据库会自动创建目录
    #mkdir -p /data/mariadb/3307/data #第3步生成数据库会自动创建目录
    #mkdir -p /data/mariadb/3308/etc/my.cnf.d
    #mkdir -p /data/mariadb/3308/data


    2.更改目录权限和所属者所属组

    chown -R mysql.mysql /data/mariadb
    chmod -R 771 /data/mariadb/
    chmod 755 /data/mariadb/*/etc

    3.使用数据库生成脚本,对各个数据库存放目录分别进行数据库生成

    mysql_install_db --datadir=/data/mariadb/3307/data --user=mysql --basedir=/usr
    mysql_install_db --datadir=/data/mariadb/3308/data --user=mysql --basedir=/usr

    4.拷贝/etc/my.cnf至目录下自建的/etc

    cp -Rp /etc/my.cnf* /data/mariadb/3307/etc/
    cp -Rp /etc/my.cnf* /data/mariadb/3308/etc/

    拷贝后进行更改

    [mysqld]
    port=3307
    datadir=/data/mariadb/3307/data
    socket=/data/mariadb/3307/mysql.socket
    
    [musqld_safe]
    log-error=/data/mariadb/3307/mariadb.err.log
    pid-file=/data/mariadb/3307/mariadb.pid
    
    #注释或更改掉此项,
    #!includedir /etc/my.conf.d
    !includedir /data/mariadb/3307/etc/my.conf.d

    **3308 的照例更改**
    **etc/my.cnf.d/server.cnf 注意内存分配等**
    **多实例下 各个实例的 socket 文件 配置不能再是默认路径了,不然是默认路径的实例先启动的话,其他实例无法启动**

    5.更改mysqld服务脚本

    原路径: /usr/lib/systemd/system/mariadb.service
    改成分别是 `mariadba.service` 和 `mariadbb.service`
    ** mysqld_safe 的 basedir参数不要需修改, `/usr/share/mysql` 目录会找不到**

    Description=MariaDB database server
    After=syslog.target
    After=network.target
    
    [Service]
    Type=simple
    User=mysql
    Group=mysql
    
    ExecStartPre=/usr/libexec/mariadb-prepare-db-dir %n
    # Note: we set --basedir to prevent probes that might trigger SELinux alarms,
    # per bug #547485
    #ExecStart=/usr/bin/mysqld_safe --defaults-file=/data/3308/etc/my.cnf --basedir=/usr
    ExecStart=/usr/bin/mysqld_safe --defaults-file=/data/3307/etc/my.cnf --basedir=/usr
    ExecStartPost=/usr/libexec/mariadb-wait-ready $MAINPID
    
    # Give a reasonable amount of time for the server to start up/shut down
    TimeoutSec=300
    
    LimitNOFILE=102400
    
    # Place temp files in a secure directory, not /tmp
    PrivateTmp=true
    
    [Install]
    WantedBy=multi-user.target

    6.其他

    服务操作

    systemctl daemon-reload
    systemctl enable mariadb3307 #开机启动mariadb3307
    systemctl start mariadb3307
    systemctl stop mariadb3307
    systemctl restart mariadb3307
    systemctl status mariadb3307

    连入mysql
    mysql -uroot -p -h127.0.0.1 -P3308

    修改root密码
    mysqladmin -uroot -S /app/mysql/3308/mysql.sock password "mariadb"

  • 相关阅读:
    python-paramiko
    python函数
    pyinstaller打包py程序为exe文件
    centos7安装python3.6.4
    docker资源限制
    docker网络管理
    docker run命令
    dockerfile解析
    爬虫基础巩固
    爬取图虫网 示例网址 https://wangxu.tuchong.com/23892889/
  • 原文地址:https://www.cnblogs.com/lzpong/p/15007882.html
Copyright © 2020-2023  润新知