mysql_multi的现实意义:
1:随着连接数上升,性能会下降,通过多实例来分流大量连接来提高性能。
2:做资源隔离
3:分库分表
mysql_multi是官方管理多实例的一个脚本,利用perl语言来编写的。
 
实验环境:
数据库版本:mysql-5.7.14
/data/mysql/mysql3306/{data, log, tmp}
/data/mysql/mysql3307/{data, log, tmp}
现在系统里面已经有了mysql3306这个版本了,我们直接安装一个3307即可。my3307.cnf配置文件可以copy my3306.cnf,修改关键部位即可。
 
初始化:
cd /uer/local/mysql
./bin/mysqld --defaults-file=/data/mysql3307/my3307.cnf --initialize
cat /data/mysq/mysql3307/data/error.log
 
现在我们要准备一个my.cnf文件,这个文件一定放在/etc/my.cnf下,且里面要有两个部分:[mysqld_mutli]和[mysqldN](N代表端口号)。
例如:
[mysql_multi]
mysqld = /usr/local/mysql/bin/mysqld_safe
mysqladmin = /usr/local/mysql/bin/mysqladmin
log = /data/mysql/mysqld_multi.log
user = liumdev
password = liumdevadmin
 
[mysqld3306]
port = 3306
socket = /tmp/mysql3306.sock
datadir = /data/mysql/mysql3306/data
tmpdir = /data/mysql/mysql3306/tmp
server-id = 13306
log-bin = /data/mysql/mysql3306/log/mysql-bin
 
[mysqld3307]
port = 3307
socket = /tmp/mysql3307.sock
datadir = /data/mysql/mysql3307/data
tmpdir = /data/mysql/mysql3307/tmp
server-id = 13307
log-bin = /data/mysql/mysql3307/log/mysql-bin
 
这里注意,[mysqldN]里面配置的参数要在[mysqld]后面,这样后面的参数会覆盖前面的参数,好处是如果你想对单独的实例做一下参数调优的话可以自己设定,3306与3307之间是互不影响的。
 
启动:/usr/local/mysql/bin/mysql_multi start 3306
/usr/local/mysql/bin/mysqld_multi start
 
创建对应的用户并给与shuwdown权限:
create user 'liumdev'@'localhost' identfied by 'liumdevadmin';
grant shutdown on *.* to 'liumdev'@'localhost'; flush privileges;
查看账户:select user,host,authentication_string from mysql.user;
更改授权:update mysql.user set host='127.0.0.1' where user = 'liumdev';
 
关闭:/usr/local/mysql/bin/mysqld_multi stop
/usr/local/mysql/bin/mysqld_multi stop 3307
 
排错:
1:使用mysqld_multi stop 3307 报错 'access denied for .... (using password: yes)'?
这是因为5.6版本以后不允许在终端上输出明文密码导致,解决的话修改/usr/local/mysql/bin/mysqld_multi,更改:
my $com= join ' ', 'my_print_defaults -s', @defaults_options, $group;
 
2:注意关闭多实例的用户和密码是3306和3307上分别创建的,要两个账户必须是一样的。
3:5.7版本动态修改innodb_buffer_pool_size:set global innodb_buffer_pool_size=1000*1024*1024;
 

利用mysql_multi来管理多实例:的更多相关文章

  1. 利用mysqld_multi启动管理多实例

    利用mysqld_multi启动管理多实例 官方管理多实例的一个脚本peer #将之前的目录清空 [root@mysql01 mysql]# tree /data/mysql/ /data/mysql ...

  2. 利用SQLiteOpenHelper来管理SQLite数据库 (转)

    转载自 利用SQLiteOpenHelper来管理SQLite数据库 http://blog.csdn.net/conowen/article/details/7306545 Android学习笔记( ...

  3. 教你管理SQL实例系列(1-15)

    全系列转自:51CTO ->jimshu http://jimshu.blog.51cto.com 目录及原本连接如下: 教你管理SQL实例(1)数据库实例 教你管理SQL实例(2)服务启动帐户 ...

  4. logAnalyzer日志管理系统配置实例

    LogAnalyzer日志管理系统配置实例 上个月我写过一篇<利用EventlogAnalyzer分析Linux日志>一文深受大家喜欢,今天我再次为大家讲解Linux系统下的一款开源的日志 ...

  5. 简单利用XSS获取Cookie信息实例演示

    简单利用XSS获取Cookie信息实例演示   首先要找到一个有XXS的站,这里就不整什么大站了,谷歌一下inurl:'Product.asp?BigClassName',搜出来的命中率也比较高.随便 ...

  6. php版redis插件,SSDB数据库,增强型的Redis管理api实例

    php版redis插件,SSDB数据库,增强型的Redis管理api实例 SSDB是一套基于LevelDB存储引擎的非关系型数据库(NOSQL),可用于取代Redis,更适合海量数据的存储.另外,ro ...

  7. Linux - 利用systemctl命令管理服务

    systemctl命令是系统服务管理器指令,融合了service和chkconfig的功能,可以查看和设置服务. 这里以docker服务为例. 利用systemctl命令管理 显示服务状态:syste ...

  8. OCM_第十六天课程:Section7 —》GI 及 ASM 安装配置 _安装 GRID 软件/创建和管理 ASM 磁盘组/创建和管理 ASM 实例

    注:本文为原著(其内容来自 腾科教育培训课堂).阅读本文注意事项如下: 1:所有文章的转载请标注本文出处. 2:本文非本人不得用于商业用途.违者将承当相应法律责任. 3:该系列文章目录列表: 一:&l ...

  9. 在EntityFramework6中管理DbContext的正确方式——4DbContextScope:一个简单的,正确的并且灵活的管理DbContext实例的方式(外文翻译)

    (译者注:使用EF开发应用程序的一个难点就在于对其DbContext的生命周期管理,你的管理策略是否能很好的支持上层服务 使用独立事务,使用嵌套事务,并行执行,异步执行等需求? Mehdi El Gu ...

随机推荐

  1. postman插件安装教程

    第一步: 第二步: 第三步: 这样就可以了. 插件下载链接: http://pan.baidu.com/s/1eRVLMpk 密码: 49vb

  2. SSO之CAS单点登录实例演示

    本文目录: 一.概述 二.演示环境 三.JDK安装配置 四.安全证书配置 五.部署CAS-Server相关的Tomcat 六.部署CAS-Client相关的Tomcat 七. 测试验证SSO 一.概述 ...

  3. NSValue 类的使用

    NSValue对象是用来存储一个C或者Objective-C数据的简单容器.它可以保存任意类型的数据int,float,char等,也可以是指pointers, structures, and obj ...

  4. WPF内置命令

    <Window x:Class="WpfCommands.MainWindow"         xmlns="http://schemas.microsoft.c ...

  5. 开发一个IONIC应用的首要操作(宏观)

    1.创建工程 2.搭建路由(routes.js) 3.添加控制(controller.js) 4.加载模块(app.js)

  6. laravel的学习感受

    学习laravel也有一段时间了自己感觉还是不怎么难就是自己的代码不熟悉所以很多的不怎么会.

  7. IE11 HTML Help ActiveX

    <!--by: @qab--> <OBJECT id=HHCTRL type="application/x-oleobject" classid="cl ...

  8. kali4.0 下tftpd-hpa服务无法启动的解决方案

    一.前情提要: OS:Kali4.0 64bit 使用以下命令启动tftpd-hpa服务失败: sudo /etc/init.d/tftpd-hpa 二.解决方案: 1.输入以下命令: sudo in ...

  9. oracle过滤字母

     select regexp_replace(col,'[A-Za-z]') from dual;  --> 12345col 列名 

  10. 用css实现三级导航菜单

    主要使用css的hover伪类来实现该功能. 主要思路:先搭出三级菜单的框架,然后使用css的:hover来实现! 对li添加类selected,对该类添加position:relative属性,然后 ...