如何在一台服务器上安装两个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 1070 [SCOI2007]修车
最小费用最大流. 将每个技术人员拆成车数个点,技术人员i的第j个点代表技术人员i修的倒数第j辆车. 源点向所有技术人员点连一条容量为1费用为0的边. 所有技术人员点向所有车点连边:技术人员i的第j个点 ...
- 推荐一款Mac上好用的Markdown编辑器
[TOC] 推荐一款Mac上好用的Markdown编辑器 正文 我算是一位Evernote的重度用户吧.之前也尝试过为知笔记,有道云笔记,微软的onenote,最后还是觉的Evernote.因为我喜欢 ...
- Autofac 依赖注入
介绍 Autofac是一款IOC框架,很轻量级性能非常高,自动注入很给力. NuGet Autofac:Autofac控制反转容器核心 Autofac.MVC5:提供IDependencyResolv ...
- Java开发实践 集合框架 全面分析
http://www.open-open.com/lib/view/open1474167415464.html
- java在线支付
http://blog.csdn.net/lidew521/article/category/1437251
- js访问php,返回数组时的注意事项
用ajax访问php脚本返回值是数组的时候,php端需要使用json_encode()函数进行转码成json字符串,js端需要用JSON.parse()来吧json字符串转换成数组或对象. 直接返回会 ...
- Spring特性--DI
DI:Dependency Injection(依赖注入),通俗的讲就是一种通过xml配置文件,为交给sping容器的对象初始化参数.又称做控制反转:Inversion of Control(IoC) ...
- C#技术漫谈之垃圾回收机制(GC)
GC的前世与今生 虽然本文是以.NET作为目标来讲述GC,但是GC的概念并非才诞生不久.早在1958年,由鼎鼎大名的图林奖得主John McCarthy所实现的Lisp语言就已经提供了GC的功能,这是 ...
- python 单例模式
单例模式,也叫单子模式,是一种常用的软件设计模式.在应用这个模式时,单例对象的类必须保证只有一个实例存在 用装饰器方式实现单例模式 #!/usr/bin/python # coding=utf-8 d ...
- OperateLoger
protected void Page_Load(object sender, EventArgs e) { OperateLoger.FunctionInfo =new FunctionInfo { ...