mysqld_multi部署mysql单机多实例
1.安装gcc-c++、ncurses依赖包
# yum install gcc-c++ ncurses-devel
2.安装cmake,用来编译mysql
# tar -xvf cmake-3.2.0-.tar.gz
# mv cmake-3.2.0 cmake
# mv cmake /tmp/
# cd /tmp/cmake/
# ./bootstrap
# make
# make install
# cmake --version
3.安装bison
# tar -xvf bison-3.0.tar.gz
# mv bison-3.0 bison
# mv bison /tmp
# cd /tmp/bison/
# ./cofigure
# make
# make install
# bison --version
4.创建mysql用户
# /usr/sbin/groupadd mysql
# useradd -s /sbin/nologin -g mysql -M mysql
5.编译安装
配置
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_USER=mysql \
生成可执行文件
# make
安装
# make install
6.创建多实例的数据文件目录
# mkdir -p /data/{3306,3307}/data/
7.初始化数据库,创建基础的数据库文件
# cd /usr/local/mysql/scripts/
#./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/3306/data/
#./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/3307/data/
8.配置多实例的文件权限
授权mysql用户和组管理多实例目录/data
# chown -R mysql.mysql /data
9.配置多实例的配置文件
# vim /etc/my.cnf
[mysqld_multi]
mysqld = /usr/local/mysql/bin/mysqld_safe
mysqladmin = /usr/local/mysql/bin/mysqladmin
user = multi_admin
password = multipass [mysqld3306]
socket = /data/3306/data/mysql.sock
port = 3306
log-error = /data/3306/data/mysql.err
datadir = /data/3306/data/
pid-file = /data/3306/data/mysql.pid
log-bin = /data/3306/data/mysql-bin
relay_log = /data/3306/data/relay-bin
slow_query_log_file = /data/3306/data/slowquery.log
general_log_file = /data/3306/data/general.log
user = mysql [mysqld3307]
socket = /data/3307/data/mysql.sock
port = 3307
log-error = /data/3307/data/mysql.err
datadir = /data/3307/data/
pid-file = /data/3307/data/mysql.pid
log-bin = /data/3307/data/mysql-bin
relay_log = /data/3307/data/relay-bin
slow_query_log_file = /data/3307/data/slowquery.log
general_log_file = /data/3307/data/general.log
user = mysql
10.配置mysql命令的环境变量
# echo 'export PATH=/usr/local/mysql/bin:$PATH' >> /etc/profile
# source /etc/profile
11.启动
查看状态
# mysqld_multi --defaults-extra-file=/etc/my.cnf report
Reporting MySQL servers
MySQL server from group: mysqld3306 is not running
MySQL server from group: mysqld3307 is not running
启动实例
# mysqld_multi start
# mysqld_multi --defaults-extra-file=/etc/my.cnf report
Reporting MySQL servers
MySQL server from group: mysqld3306 is running
MySQL server from group: mysqld3307 is running
12.修改的root用户的密码并且限制只能本机登陆
# mysqladmin -S /data/3306/data/mysql.sock -u root -h 'localhost' password 'XXXXXXXX'
# mysqladmin -S /data/3307/data/mysql.sock -u root -h 'localhost' password 'XXXXXXXX'
13.使用root用户登陆
# mysql -S /data/3306/data/mysql.sock -u root -p
# mysql -S /data/3307/data/mysql.sock -u root -p
14.创建关闭实例的用户
mysql> CREATE USER 'multi_admin'@'localhost' IDENTIFIED BY 'multipass';
mysql> GRANT SHUTDOWN ON *.* TO 'multi_admin'@'localhost';
14.停止实例
停止所有实例
# mysqld_multi stop
停止实例1
# mysqld_mulit stop 3306
管理多实例的话可以使用mysqlmanager实例管理器,管理器来会比较方面
mysqld_multi部署mysql单机多实例的更多相关文章
- 多配置文件部署mysql单机多实例
1.安装gcc-c++.ncurses依赖包 # yum install gcc-c++ ncurses-devel 2.安装cmake,用来编译mysql # tar -xvf cmake-3.2. ...
- MySQL单机多实例安装并配置主从复制
单机多实例据说可以最大程度提高硬件使用,谁知道呢,但是以前的公司喜欢这样搞,我最近也在学习复制什么的,电脑搞不起两台虚拟机,刚好单机多实例可以解救我.下面就说说步骤. 承上文http://www.cn ...
- mysql单机多实例
在数据库服务器上,可以架构多个Mysql服务器,进行单机多实例的读写分离: 可以通过mysqld_multi来进行多实例的管理,mysqld_multi是用perl写的脚本,原理是通过mysql_ad ...
- mysql 单机多实例配置
如果你想在一台机器上进行主从配置实验,本篇可以帮助你实现愿望 [client] #password = your_password port = 3306 socket = /tmp/mysql.so ...
- mysql单机多实例配置
Windows上配置多个mysql实例,主要改下配置文件即可,mysql目录如下: my2中主要改两个配置内容 datadir = D:/Program Files/Mysql/mysql-5.7.2 ...
- MySQL单机单实例安装脚本(转载)
说明:使用mysql generic tar.gz包快速安装mysql 三个文件installation_of_single_mysql.sh.template_install-my.cnf.mysq ...
- MySQL单机单实例安装脚本
说明:使用mysql generic tar.gz包快速安装mysql 三个文件installation_of_single_mysql.sh.template_install-my.cnf.mysq ...
- mysql 单机多实例重启数据库服务
1.# cat db.txtbackend 3310base 3320storage 3330payment 3340promotion 3350 2.# cat restart_mysql_slav ...
- 使用mysqld_multi 实现Mysql 5.6.36 + 5.7.18 单机多实例多版本安装
Mysql 5.6.36 + 5.7.18 单机多实例多版本安装 随着硬件层面的发展,各种高性能服务器如雨后春笋般出现,但高性能服务器不免造成浪费, MySQL单机多实例,是指在一台物理服务器上运行多 ...
随机推荐
- ExpandableListView实现子Item的点击事件
在继承的BaseExpandableListAdapter的ExpandableListView的Adapter中,重写以下方法 @Override public boolean isChildSel ...
- userDefaults
// // RootViewController.m #import "RootViewController.h" @interface RootViewController () ...
- MTU-TCP/IP协议栈-linux kernel-TCP丢包重传-UDP高性能-AI-
http://view.inews.qq.com/a/20161025A0766200窄带时代的QQQQ是窄带时代极具代表性的产品,在那个网络传输效率比较低的年代,大家还记得Google的首页吗?Go ...
- SQL代码创建表例子
create table class ( code ) primary Key, name ) ); create table student ( code ) primary Key, name ) ...
- ASP.Net网站程序在编译发布部署后的后期修改
ASP.Net网站程序在发布部署后的后期修改 作者:东篱南山 这里说的后期修改是指网站编译发布并部署好之后,对程序进行的修改,即在不能更改现有代码的情况下,更改页面的显示或是更改业务逻辑.一般是在程序 ...
- URL编码数据转换为JSON数据
NSString *urlString; urlString=[self URLDecodedString:urlString]; -(NSString *)URLDecodedString:( ...
- 在大数据中,关于native包的编译步骤
一.问题的由来: 二.解决问题的方法(所有的操作在root下完成): 1.前期需要的环境,下面的已经在伪分布式中配置好,不再重复 配置好jdk 配置好hadoop 2.上传还需要包 apache-ma ...
- win7下vs2010编译生成sqlite3.dll库
http://blog.csdn.net/qing666888/article/details/53582262 http://download.csdn.net/detail/qing666888/ ...
- 【转载】拒绝平庸——浅谈WEB登录页面设计
用户活跃度是检验产品成功与否的重要指标之一,传统行业的商家极为重视门面的装潢,因为一个好的门面可以聚集人气,招揽更多的顾客.古时候的大户人家院子门口的石狮子或其他的摆件的摆放极为讲究,有一定的风水学说 ...
- UITextView打开文字中的URL
1. 背景介绍 UITextView里显示的文字带有url,点击url可以打开对应的网页,可以分两种打开方式:(1)在App内打开url:(2)用safari打开url. 2. 实现代码: (1)声明 ...