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. IOS textField(textview)字数判断

    textfield 有时会需要设置字数限制,如果只是英文或者符号,可以直接在以下代理方法中判断字数 -(BOOL)textField:(UITextField *)textField shouldCh ...

  2. [mysql]throw exception

    CREATE PROCEDURE pro_throwException (errorCode char(5), errorMessage text) BEGIN SIGNAL SQLSTATE err ...

  3. jquey与javascript相通运用查找(全)

    1.addClass\removeClass\classList(js) jQ:$('#div').addClass('hover')=====document.getElementById('div ...

  4. java读取输入流

    java读取输入流两种 private static byte[] readStream(InputStream in){ if(in==null){ return null; } byte[] bu ...

  5. Nexpose下载安装注册一条龙

    附上两个下载链接: Windows版本(64bit) : http://download2.rapid7.com/download/NeXpose-v4/NeXposeSetup-Windows64. ...

  6. Solr atomic update JSON方式

    http://yonik.com/solr/atomic-updates/ Solr supports several modifiers that atomically update values ...

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

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

  8. Linux就该这么学

    第三章:Vim编辑器与Shell脚本 Vim文本编辑器 在Linux系统中配置应用服务,实际上就是在修改它的配置文件. 在热门的Linux操作系统中都会默认安装一款超好用的文本编辑器--"v ...

  9. Java时间的处理

    1. Java计算时间依靠1970年1月1日开始的毫秒数.2. Date类的构造函数Date()返回代表当前创建的时刻的对象.Date的方法getTime()返回一个long值在数值上等于1970年1 ...

  10. 动态加载框架DL分析

    动态加载框架DL分析 插件化开发,主要解决三个问题1.动态加载未安装的apk,dex,jar等文件2.activity生命周期的问题,还有service3.Android的资源调用的问题 简单说一下怎 ...