zoukankan      html  css  js  c++  java
  • 三、linux-mysql mysql的多实例

    1.什么是mysql多实例

             一个机器开通多个端口,运行多个mysql服务器进程,这些服务进程通过不同的socket监听不同的服务端口提供各自的服务,但它们共用一台mysql安装程序,使用不同的my.cnf配置文件、启动程序,数据文件。逻辑上多实例是独立的。

    2.多实例的作用和问题

             有效利用服务器资源(服务器占用60%以上)、节约服务器资源,但当某个服务实例并发很高或者有慢查询时,整体服务提供的质量下降

    3.应用场景

       1)质量不想下降,但是资金紧张,比如3个服务器,可以部署6到九个实例

       2)并发不是很大的业务

       3)门户网站应用mysql实例场景多

    4.多实例的配置方案

       1)多个配置文件和多个启动程序    2)单一配置方式:my.cnf (耦合性太高)

    5.安装MySQL多实例

        1)依赖包

           yum install  ncurses-devek -y

           yum install libaio-devel -y

       2) mkdir -p /data/{3306,3307}/data 将修改好的配置文件放置到这里my.cnf 和mysql脚本

       3)授权 /data/{3306,3307}/data 为mysql组和用户:chown

       4)  进行初始化:/application/mysql/scripts/mysql_install_db --basedir=/application/mysql --datadir=/data/3307/data/ --user=mysql

      提示:其实这里自己一直想不同,初始化是建库需要组织系统表关系结构,这个好理解,需要用到配置文件这个也好理解,但是在默认情况下应该是查看/etc/my.cnf,在查看当前的datadir同目录下的配置文件,如果两者都存在,那么以默认的配置文件优先级最好。

      5) ../mysql  start 进行启动

      6)   本地登陆命令: mysql -s /data/3306/mysql.sock    mysql -s /data/3307/mysql.sock

      7)多实例间的跳转为:system :   system mysql -S /data/3307/mysql.sock

      8)  停止命令:/data/3306/mysql stop  /data/3307/mysql stop

      9)添加密码: mysqladmin -u root -S /data/330{6,7}/mysql.sock password 'oldboy124' 

     10)show databases;

    6.可以根据上述方法再创建一个实例3308,这里已经创建,一步一来就ok了,结果如下,共3个进程:

      

     7.本地登陆命令: mysql -s /data/3306/mysql.sock    mysql -s /data/3307/mysql.sock

     远程登陆命令是:mysql -uroot -p'oldboy124' '-h 192.168.0.102'  -P 3307

  • 相关阅读:
    linux sed的使用
    linux 服务的操作
    Js apply方法详解,及其apply()方法的妙用
    call()方法和apply()方法
    javascript中的深拷贝和浅拷贝
    移动web适配利器-rem
    js 函数讲解
    try…catch 结构
    Git使用之(pathspec master did not match any file(s) known to git)
    微信小程序使用函数的三种方法
  • 原文地址:https://www.cnblogs.com/dangjingwei/p/11373433.html
Copyright © 2011-2022 走看看