如何在一台服务器上安装两个mysql或者更多
如何在一台服务器上安装两个mysql
1 前言
上篇写了在一台机器上源码编译安装一个mysql,那么如何在一台机器上源码编译安装两个mysql或者更多呢?
2 环境
mysql软件包:
mysql-5.6.31.tar
mysql-5.5.32.tar
操作系统环境:
CentOS release 6.8 (Final)
3 系统规模
/mysqlsoft |
用来存放mysql的各个程序 |
|
/mysqlsoft/mysql1 |
用来存放mysql-5.5.32.tar 的安装程序 |
|
/mysqlsoft/mysql2 |
用来存放mysql-5.6.31.tar 的安装程序 |
|
/mysqlsoft/mysql1/mysql.sock |
||
/mysqlsoft/mysql2/mysql.sock |
||
/data |
用来存放数据 |
|
/data/mysql1 |
用来存放mysql-5.5.32.的数据 |
|
/data/mysql2 |
用来存放mysql-5.6.31.的数据 |
4 添加用户和目录
添加用户
groupadd mysql
useradd mysql -g mysql
创建目录
mkdir /mysqlsoft
mkdir mysqlsoft/mysql1/ -pv
mkdir mysqlsoft/mysql2/ -pv
创建数据目录
mkdir /data
mkdir /data/mysql1/ -pv
mkdir /data/mysql2/ -pv
更改权限:
chown -R mysql:mysql mysqlsoft/mysql1
chown -R mysql:mysql mysqlsoft/mysql2
chown -R mysql:mysql /data/mysql1
chown -R mysql:mysql /data/mysql2
5 编译mysql并安装
在源码编译安装前我们需要安装一下工具
cmake,make,gcc,Perl,
yum install cmake,make,gcc,Perl -y
5.1 mysql-5.5.32
cd mysqlsoft/mysql1/
tar -zxvf mysql-5.5.32.tar.gz
mkdir bootstarp
我们把源码编译在bootstarp目录里
cmake .. -DCMAKE_INSTALL_PREFIX=/mysqlsoft/mysql1
-DMYSQL_DATADIR=/data/mysql1
-DSYSCONFDIR=/mysqlsoft/mysql1
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1
-DMYSQL_TCP_PORT=3301
-DMYSQL_UNIX_ADDR=/mysqlsoft/mysql1/mysql.sock
编译完后,我们需要make然后make install
5.2 安装后的工作
具体参考: http://www.cnblogs.com/karmapeng/p/5844875.html
cd /mysqlsoft/mysql1
cp ./support-files/my-default.cnf my.cnf
编辑my.cnf添加配置项
chown -R mysql .
chgrp -R mysql .
初始化mysql:
scripts/mysql_install_db --user=mysql
更改mysql数据目录的权限
5.3 mysql-5.6.31
cd /mysqlsoft/mysql2
tar -zxvf mysql-5.6.31.tar.gz
mkdir bootstarp
我们把源码编译在bootstarp目录里
cmake .. -DCMAKE_INSTALL_PREFIX=/mysqlsoft/mysql2
-DMYSQL_DATADIR=/data/mysql2
-DSYSCONFDIR=/mysqlsoft/mysql2
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1
-DMYSQL_TCP_PORT=3302
-DMYSQL_UNIX_ADDR=/mysqlsoft/mysql2/mysql.sock
编译完后,我们需要make然后make install
5.4 安装后的工作
具体参考: http://www.cnblogs.com/karmapeng/p/5844875.html
cd /mysqlsoft/mysql2
cp ./support-files/my-default.cnf my.cnf
编辑my.cnf添加配置项
chown -R mysql .
chgrp -R mysql .
初始化mysql:
scripts/mysql_install_db --user=mysql
更改mysql数据目录的权限
6 启动mysql
6.1 启动mysql-5.5.32
cd /mysqlsoft/mysql1
bin/mysqld_safe --user=mysql &
6.2 启动mysql-5.6.31
cd /mysqlsoft/mysql2
bin/mysqld_safe --user=mysql &
6.3 查看mysql的启动情况
[root@mysql mysql2]# ps -ef | grep mysql
root 6329 2853 0 13:19 pts/0 00:00:00 /bin/sh bin/mysqld_safe --user=mysql
mysql 6607 6329 0 13:19 pts/0 00:00:00 /mysqlsoft/mysql1/bin/mysqld --basedir=/mysqlsoft/mysql1/ --datadir=/data/mysql1/ --plugin-dir=/mysqlsoft/mysql1//lib/plugin --user=mysql --log-error=/data/mysql1//mysql.localdomain.err --pid-file=/data/mysql1//mysql.localdomain.pid --socket=/mysqlsoft/mysql1/mysql.sock --port=3301
root 6630 2853 0 13:20 pts/0 00:00:00 /bin/sh bin/mysqld_safe --user=mysql
mysql 6774 6630 0 13:20 pts/0 00:00:00 /mysqlsoft/mysql2/bin/mysqld --basedir=/mysqlsoft/mysql2 --datadir=/data/mysql2 --plugin-dir=/mysqlsoft/mysql2/lib/plugin --user=mysql --log-error=/data/mysql2/mysql.localdomain.err --pid-file=/data/mysql2/mysql.localdomain.pid --socket=/mysqlsoft/mysql2/mysql.sock --port=3302
6.4 删除mysql里的其他项
1.改root用户更改密码
2.删除匿名用户
3. 删除mysql.db里的一些行,这些行定义了任何用户都可以访问test数据库,或者以test_开头的数据库。
DELETE FROM mysql.db WHERE Db LIKE 'test%';
具体请参考
http://www.cnblogs.com/karmapeng/p/5844875.html
如何在一台服务器上安装两个mysql或者更多的更多相关文章
- (windows)一台电脑上安装两个Mysql服务
原文:https://my.oschina.net/u/1472917/blog/410732 最近需要在一台电脑上安装两个Mysql服务,需求稍微有些奇怪,但确实很必要.本人原本为了本机测试Word ...
- 如何在一台机器上安装两个MYSQL数据库
1.正常安装第一个mysql(安装步骤省略) 2.在控制面板里停止第一个mysql服务 3.将C:\Program Files\MySQL目录下的所有目录和文件copy到另外一个路径,我这里是copy ...
- 【MySQL】一台服务器上搭建两个mysql节点
环境: CentOS 6.8 memory:1G Mysql 5.7 二进制安装包 1.安装相关的环境包 yum -y install gcc glibc libaio libstdc++ libs ...
- 在一台Linux服务器上安装多个MySQL实例(一)--使用mysqld_multi方式
(一)MySQL多实例概述 实例是进程与内存的一个概述,所谓MySQL多实例,就是在服务器上启动多个相同的MySQL进程,运行在不同的端口(如3306,3307,3308),通过不同的端口对外提供服务 ...
- 如何在同一台机器上安装多个MySQL的实例
转自:'http://www.cnblogs.com/shangzekai/p/4375271.html 最近由于工作的需要,需要在同一台机器上搭建两个MySQL的实例,(注:已经存在了一个3306的 ...
- 如何在同一台机器上安装多个MySQL的实例 转
https://www.cnblogs.com/shangzekai/p/4375271.html 最近由于工作的需要,需要在同一台机器上搭建两个MySQL的实例,(注:已经存在了一个3306的MyS ...
- 如何在同一台机器上安装多个MySQL的实例(转)
最近由于工作的需要,需要在同一台机器上搭建两个MySQL的实例,(注:已经存在了一个3306的MySQL的实例). 先说下,什么是mysql的多实例,简单的来说就是一台机器上安装了多个mysql的服务 ...
- 如何在同一台服务器上安装多套通达OA
本人最近研究了在同一服务器安装多套通达OA的方法:发现网上关于这个话题的文章比较少,于是录制成视频,在此发布,希望对有这方面需求的朋友有所帮助: http://blog.163.com/zhuwei_ ...
- 如何在同一台服务器上部署两个tomcat
因为测试的需要,有时我们必须在同一个服务器上部署两个tomcat,然后去做应用的部署,那么很多同学可能会觉得比较为难,找的资料也比较的不齐全,那么今天华华就来给大家讲讲如何部署2个tomcat,并能够 ...
随机推荐
- 【BZOJ-1127】KUP 悬线法 + 贪心
1127: [POI2008]KUP Time Limit: 10 Sec Memory Limit: 162 MBSec Special JudgeSubmit: 317 Solved: 11 ...
- javascript 基础
javascript概述: javascript历史: * 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名ScriptEas ...
- ubuntu10.04配置XMAPP中的环境变量
1. 显示环境变量:[root@localhost ~]# echo $PATH/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/lo ...
- Android SD卡存储
原创文章,转载请注明出处:http://www.cnblogs.com/baipengzhan/p/Android_SDcard_store.html 一 概念 SD卡存储空间比较大,当需要存取较大的 ...
- bootstrapvalidator+bootstrap-select select无法校验问题解决方法
$("#form_user_input") .bootstrapValidator( { message : 'This value is not valid', excluded ...
- ubuntu重启搜狗输入法
fcitx | xargs kill sogou-qimpanel | xargs kill 或者编写Shell脚本restart_sougou.sh,放到/usr/bin目录下,不要忘记chmod修 ...
- 关于Nginx的一些优化(突破十万并发)
nginx指令中的优化(配置文件) worker_processes 8; nginx进程数,建议按照cpu数目来指定,一般为它的倍数. worker_cpu_affinity 00000001 00 ...
- Android手机清除微信缓存
方法一: 1.任意找一个微信好友,给他发送网址 http://debugx5.qq.com 2.自己点击这个网址跳转 3.进入后看到下面的页面,通过勾选第二张截图的Cookie和文件缓存来清除微信缓存 ...
- 2. web前端开发分享-css,js进阶篇
一,css进阶篇: 等css哪些事儿看了两三遍之后,需要对看过的知识综合应用,这时候需要大量的实践经验, 简单的想法:把qq首页全屏另存为jpg然后通过ps工具切图结合css转换成html,有无从下手 ...
- iOS多线程-多线程实现之GCD
什么是GCD? GCD: Grand Central Dispatch (重要的中枢调度器) GCD是纯C语言的, 学习它就是学习一些函数的使用. GCD的核心概念和使用步骤 核心概念 任务 : 执行 ...