【MySQL】一台服务器上搭建两个mysql节点
环境:
CentOS 6.8
memory:1G
Mysql 5.7 二进制安装包
1.安装相关的环境包
yum -y install gcc glibc libaio libstdc++ libstdc ncurses-libs
2.查看系统中是否存在已经安装的mysql,如果有的话,将其卸载掉
rpm -qa | grep mysql
rpm -e mysql #普通删除模式
rpm -e --nodeps mysql #强力删除模式
3.创建组和用户
groupadd mysql
useradd -r -g mysql -s /bin/false myqsl
4.解压mysql5.7二进制安装包
tar -xvf mysql-5.7.15-linux-glibc2.5-x86_64.tar.gz
mv /root/mysql-5.7.15-linux-glibc2.5-x86_64 /usr/local/mysql
5.创建相关目录
mkdir -p /mydata/data330{6..7}
chown mysql.mysql /mydata -R
6.修改my.cnf文件
vi /etc/my.cnf
[mysqld_multi]
mysqld = /usr/local/mysql/bin/mysqld_safe
mysqladmin = /usr/local/mysql/bin/mysqladmin
#user = root
#password = rootpwd
[mysqld3306] //这里最好不要写其他名称,开始的时候我加了下划线,但是命令无法识别
port = 3306
server_id = 3306
basedir =/usr/local/mysql
datadir =/mydata/data3306
socket =/tmp/mysql3306.sock
log-error =/var/log/mysqld_3306.log
pid-file =/mydata/data3306/mysqld3306.pid
[mysqld3307]
port = 3307
server_id = 3307
basedir =/usr/local/mysql
datadir =/mydata/data3307
socket =/tmp/mysql3307.sock
log-error =/var/log/mysqld_3307.log
pid-file =/mydata/data3306/mysqld3307.pid
修改好后保存退出
7.添加环境变量
echo "PATH=$PATH:/usr/local/mysql/bin " >> /etc/profile
source /etc/profile
8.初始化数据库
bin/mysqld --initialize --user=mysql --datadir=/mydata/data3306 --basedir=/usr/local/mysql --explicit_defaults_for_timestamp
bin/mysqld --initialize --user=mysql --datadir=/mydata/data3307 --basedir=/usr/local/mysql --explicit_defaults_for_timestamp
这里会提示一个临时密码,一定要记住!!
9.启动两个不同端口的mysql
mysqld_multi report 查看下两个服务
Reporting MySQL servers
No groups to be reported (check your GNRs)
这样输出的话,就证明/etc/my.cnf文件配置错误了
实例没有起来
Reporting MySQL servers
MySQL server from group: mysqld3306 is not running
MySQL server from group: mysqld3307 is not running
显示的如上的话,证明实例已经识别了
在执行如下命令开启实例
mysqld_multi start 3306,3307
再次查看状态
mysqld_multi report
MySQL server from group: mysqld3306 is running
MySQL server from group: mysqld3307 is running
查看ps aux | grep mysql
netstat -antpl | grep 330
如果有相关的进程,证明启动成功
10.访问数据库
mysql -u root -p -S /tmp/mysql3306.sock //这里一定要指定sock文件,否则启动失败的
Enter password:
mysql -u root -p -S /tmp/mysql3307.sock
Enter password:
11.修改root密码
mysql -u root -p -S /tmp/mysql3307.sock
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
mysql> grant all privileges on *.* to root@'192.168.1.%';
mysql> flush privileges;
同样,登陆到另一个节点修改密码
mysql -u root -p -S /tmp/mysql3306.sock
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
mysql> grant all privileges on *.* to root@'192.168.1.%';
mysql> flush privileges;
12.关闭某个实例
mysqladmin -uroot -prootpwd -S /tmp/mysql3306.sock shutdown
13.开启自启动
echo "/usr/local/mysql/bin/mysqld_multi --defaults-extra-file=/etc/my.cnf start 3306,3307" >> /etc/rc.local
【MySQL】一台服务器上搭建两个mysql节点的更多相关文章
- 如何在一台服务器上安装两个mysql或者更多
如何在一台服务器上安装两个mysql 1 前言 上篇写了在一台机器上源码编译安装一个mysql,那么如何在一台机器上源码编译安装两个mysql或者更多呢? 2 环境 mysql ...
- (windows)一台电脑上安装两个Mysql服务
原文:https://my.oschina.net/u/1472917/blog/410732 最近需要在一台电脑上安装两个Mysql服务,需求稍微有些奇怪,但确实很必要.本人原本为了本机测试Word ...
- 在一台服务器上搭建多个网站的方法(Apache版)
Apache的配置文件一般放置在/etc/httpd/conf文件夹下,httpd.conf是它的主配置文件,在进行配置时可以将虚拟主机的配置文件单独配置,如取名为vhost.conf,然后再http ...
- 如何在同一台服务器上部署两个tomcat
因为测试的需要,有时我们必须在同一个服务器上部署两个tomcat,然后去做应用的部署,那么很多同学可能会觉得比较为难,找的资料也比较的不齐全,那么今天华华就来给大家讲讲如何部署2个tomcat,并能够 ...
- 如何在一台机器上安装两个MYSQL数据库
1.正常安装第一个mysql(安装步骤省略) 2.在控制面板里停止第一个mysql服务 3.将C:\Program Files\MySQL目录下的所有目录和文件copy到另外一个路径,我这里是copy ...
- 在一台服务器上搭建多个项目的SVN
需求:一台机子,多个项目,项目之间用户独立不可以相互访问文件 思路:在机子上设置多个代码仓库,用不同的端口号加一区分 实现: 首先安装SVN,我这里使用的是TortoiseSVN 首先创建多个SVN代 ...
- mysql同一台服务器上不同数据库中个别表内容同步
>>>>>>soft_wsx>>>>>>--数据备份与还原>>同步备用服务器--1.完全备份主数据库--2.使用带S ...
- 在一台服务器上搭建相对高可用HiveServer实践
本文来自网易云社区 作者:刘杰 问题及原因 组里之前搭建了一个hiveserver提供给猛犸上的ETL程序调用,hiveserver隔三差五地挂掉重启,网上查了些资料,也咨询了猛犸那边维护hivese ...
- 如何在同一台机器上安装多个MySQL的实例
转自:'http://www.cnblogs.com/shangzekai/p/4375271.html 最近由于工作的需要,需要在同一台机器上搭建两个MySQL的实例,(注:已经存在了一个3306的 ...
随机推荐
- feign代码自动生成插件
简介 feign对微服务之间的http调用做了一层封装,如果B项目想调用A项目的一个web服务,只需要编写对应的接口并标注FeignClient注解.但如果接口发生了变更,对应的Feign代码往往会忘 ...
- wordpress 后台富文本编辑器,添加图片发现无法左对齐,样式出现混乱
如上图所示,无法左对齐,但是左对齐的按钮全部是正确的,最后一点点排除,发现是因为这个词的影响,去掉就好了,原因不明,可能是这个词被当做某个方法执行了
- python 字符串拼接 + 与 join 的区别
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理 python在进行字符串的拼接时,一般有两种方法,一种是使用+直接相加,另一种是使用join a = ...
- [UWP] - Adaptive Trigger Featurede的使用方法及效果
XAML代码: <Page.Resources> <!-- DataTemplate to use in the portrait layout. --> <DataTe ...
- Windows锁定屏幕然后关闭显示器,可执行程序
有时候我们需要关闭屏幕来休息一下或者在本上写东西,但是屏幕亮着的时候会分心,但是关闭显示器又太麻烦了,所以直接来一个小程序(非微信小程序).还有一种情况,有时候晚上要离开电脑旁了,但是电脑还在做事情, ...
- Spring0-前言序
Spring的简介 一般情况下我们说的Spring是指SpringFramework,而SpringFramework实际上只是Spring家族中的一个分支而已,这在下一章会介绍 Spring实际上也 ...
- MPEG2TS文件格式概述
总结TS文件格式,早在几个月前就有了这个想法,但一直拖到今天才真正准备写一篇博文来介绍. 再不介绍的话,估计几月后又要去故纸堆里翻东西了,毕竟个人笔记中总结记录的东西太多,搞不好哪天给意外弄丢了. 1 ...
- cmd命令符大全
cmd命令大全(第一部分) winver---------检查Windows版本 wmimgmt.msc----打开windows管理体系结构(WMI) wupdmgr--------windows更 ...
- java函数方法学习
1.函数(方法)定义 类中特定功能小程序 2.函数定义格式 修饰符 返回值类型 函数名 (参数类型 形式参数) { 执行语句; return 返回值 } 函数功能实现的2个明确 1.这个功能的结果是什 ...
- ConcurrentHashMap 并发之美
一.前言 她如暴风雨中的一叶扁舟,在高并发的大风大浪下疾驰而过,眼看就要被湮灭,却又在绝境中绝处逢生 编写一套即稳定.高效.且支持并发的代码,不说难如登天,却也绝非易事. 一直有小伙伴向我咨询关于Co ...