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. Java读取文件最后两行

    File f=new File("C:\\123.txt"); BufferedReader br = new BufferedReader(new FileReader(f)); ...

  2. 使用IO流实现一个简单的小Dome

    (一) 在电脑D盘下创建一个文件为HelloWorld.txt文件,判断他是文件还是目录,在创建一个目录IOTest,之后将HelloWorld.txt移动到IOTest目录下去:之后遍历IOTest ...

  3. LoadRunner使用之变量参数化

    LR性能测试之参数化设置 Q:何为参数化? LR在录制程序运行的过程中,VuGen(脚本生成器) 自动生成了包含录制过程中实际用到的数值的脚本,如果你企图在录制的脚本中使用不同的数值执行脚本的活动(如 ...

  4. angular源码阅读的起点,setupModuleLoader方法

    angular源码其实结构非常清晰,划分的有条有理的,大概就是这样子: (function(window,document,jquery,undefined){ //一些工具函数 //EXPR 编译器 ...

  5. discuz教程:discuz模板js与jQuery冲突的解决方案

    今天在做discuz模板的时候,用到jquery的时候和原来主题js冲突.这个主要是Discuz X使用了$(id)作为dom节点的获取方法,而$符号刚好与jQuery的默认符号相冲突. 以下是基于之 ...

  6. Ubuntu上Docker安装Trouble Shooting

    (我的环境是Mint7.1,相当于Ubuntu14.04) 1,首先,根据docker.com上的安装指导来安装docker,这里就不重复了,参考: https://docs.docker.com/i ...

  7. Github上关于iOS的各种开源项目集合(强烈建议大家收藏,查看,总有一款你需要)

    下拉刷新 EGOTableViewPullRefresh - 最早的下拉刷新控件. SVPullToRefresh - 下拉刷新控件. MJRefresh - 仅需一行代码就可以为UITableVie ...

  8. Oracle(DML)

    数据操作语言: insert update delete 事务控制语言: commit rollback savepoint 1.insert语句 两种格式: 直接插入 子查询插入 1. 直接插入基本 ...

  9. phpcms 中路径问题

    <table width="100%" border="0" cellspacing="0" cellpadding="0& ...

  10. centos7 dokcer fastdfs

    docker run --name=fastdfstmp -tid centos /bin/bash docker cp /home/fastdfs fastdfstmp:/home docker e ...