• mysql多启动


    binary安装:
    1、redhat rpm
    2、mysql rpm
    3、mysql glibc

    source安装:
    1、5.1mysql(./configure && make && make install)
    2、5.5mysql(cmake && make && make install)

    单启动:
    1、安装

    tar xf xxx.tar.gz
    cd xxx
    ./configure --prefix=xxx --enable --disables --with
    make && make install
    

    2、初始化数据库:

    useradd -s /sbin/nologin mysql
    cd $basedir
    chown -R mysql.mysql .
    ./bin/mysql_install_db --user --datadir=/xxx or scripts/mysql_install_db
    chown -R root .
    chown -R mysql var|data
    ./bin/mysqld_safe --user=mysql --datadir=./var --basedir=$prefix --defaults-file=/xx/my.cnf
    

    mysql服务启动时需要哪些文件:
    程序
    /opt/mysql/bin/mysqld_safe–>mysqld
    配置文件
    /etc/my.cnf
    数据文件
    /basedir/data|var
    network socket:
    0.0.0.0:3306
    file socket:
    /tmp/mysql.sock 或 /var/lib/mysql/mysql.sock 或$prefix/mysql.sock
    pid-file:
    mysqld pid

    mysqlrpm /usr/sbin/mysqld /mysql/data1 /mysql/data1/my.cnf 3306 /mysql/data1/mysql.sock /mysql/data1/mysql.pid
    mysqlglbic /opt/mysql /mysql/data2 /mysql/data2/my.cnf 3307 /mysql/data2/mysql.sock /mysql/data2/mysql.pid
    mysql5.5 /opt/mysql5.5 /mysql/data3 /mysql/data3/my.cnf 3308 /mysql/data3/mysql.sock /mysql/data3/mysql.pid

    多启动要考虑的因素:
    1、数据目录
    2、初始化要使用的脚本
    3、配置文件
    4、启动的脚本(mysqld_safe)

    1、初始化配置:

    mkdir /mysql/data{1,2,3} -p
    chown mysql.mysql /mysql/data{1,2,3}
    chmod 700 /mysql/data{1,2,3}
    rm -rf /etc/my.cnf
    mysql_install_db --basedir=/usr --datadir=/mysql/data1 --user=mysql
    /opt/mysql/scripts/mysql_install_db --basedir=/opt/mysql --datadir=/mysql/data2 --user=mysql
    /opt/mysql5.5/scripts/mysql_install_db --basedir=/opt/mysql5.5 --datadir=/mysql/data3 --user=mysql
    

    书写配置文件:

    vim /mysql/data1/my.cnf
    
    [mysql]
    socket=/mysql/data1/mysql.sock
    port=3306
    
    [mysqld]
    user=mysql
    socket=/mysql/data1/mysql.sock
    port=3306
    datadir=/mysql/data1
    basedir=/usr
    pid-file=/mysql/data1/mysql.pid
    
    cp /mysql/data1/my.cnf /mysql/data2/my.cnf
    cp /mysql/data1/my.cnf /mysql/data3/my.cnf
    sed -i 's/data1/data2/g' /mysql/data2/my.cnf
    sed -i 's/data1/data3/g' /mysql/data3/my.cnf
    sed -i 's/3306/3307/' /mysql/data2/my.cnf
    sed -i 's/3306/3308/' /mysql/data3/my.cnf
    
    sed -i 's#/usr#/opt/mysql#' /mysql/data2/my.cnf
    sed -i 's#/usr#/opt/mysql5.5#' /mysql/data3/my.cnf
    

    启动三个mysql:

    /usr/bin/mysqld_safe --defaults-file=/mysql/data1/my.cnf &
    
    cd /opt/mysql		--如果是glibc包,需要先进入basedir
    /opt/mysql/bin/mysqld_safe --defaults-file=/mysql/data2/my.cnf &
    
    /opt/mysql5.5/bin/mysqld_safe --defaults-file=/mysql/data3/my.cnf &
    

    登录不同的mysqld

    netstat -anlp |grep mysql
    tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      7043/mysqld         
    tcp        0      0 0.0.0.0:3307                0.0.0.0:*                   LISTEN      7173/mysqld         
    tcp        0      0 0.0.0.0:3308                0.0.0.0:*                   LISTEN      7317/mysqld         
    unix  2      [ ACC ]     STREAM     LISTENING     38339  7317/mysqld         /mysql/data3/mysql.sock
    unix  2      [ ACC ]     STREAM     LISTENING     37721  7043/mysqld         /mysql/data1/mysql.sock
    unix  2      [ ACC ]     STREAM     LISTENING     38057  7173/mysqld         /mysql/data2/mysql.sock
    

    1)登录第一个mysql(3306)

    /opt/mysql5.5/bin/mysql -S /mysql/data1/mysql.sock
    /opt/mysql5.5/bin/mysql -h`hostname` -P3306
    /opt/mysql5.5/bin/mysql --defaults-file=/mysql/data1/my.cnf
    

    2)第二个

    /opt/mysql5.5/bin/mysql -S /mysql/data2/mysql.sock
    /opt/mysql5.5/bin/mysql -h`hostname` -P3307
    /opt/mysql5.5/bin/mysql --defaults-file=/mysql/data2/my.cnf
    

    3)第三个

    /opt/mysql5.5/bin/mysql -S /mysql/data3/mysql.sock
    /opt/mysql5.5/bin/mysql -h`hostname` -P3308
    /opt/mysql5.5/bin/mysql --defaults-file=/mysql/data3/my.cnf
    

    配置文件的加载顺序(后应用的会覆盖先应用的配置内容):
    mysql/mysqld
    1、/etc/my.cnf–>/etc/mysql/my.cnf–>basedir/my.cnf–>basedir/etc/my.cnf–>~/.my.cnf

  • 相关阅读:
    【C语言初阶】分支语句和循环语句
    推荐收藏!商汤智能座舱算法岗面试题7道(含解析)!
    [附源码]java毕业设计基于的前端课程学习网站
    ChatGPT,我彻彻底底沦陷了!
    葡聚糖-生物素,Dextran-Biotin|生物素,硅烷,丙烯酸酯,硫辛酸,甲苯磺酸酯,氨甲基,硝基苯碳酸盐修饰葡聚糖
    【深度学习】 Python 和 NumPy 系列教程(十六):Matplotlib详解:2、3d绘图类型(2)3D散点图(3D Scatter Plot)
    【博客456】OVN (Open Virtual Network)实现三层网络平面连通性控制
    LabVIEW电表改装与校准仿真系统
    MaxPool2d详解--在数组和图像中的应用
    docker network create
  • 原文地址:https://blog.csdn.net/u014516208/article/details/139391634