MyException - 我的异常网
当前位置:我的异常网» Linux/Unix » Linux 装配两个mysql服务

Linux 装配两个mysql服务

www.MyException.Cn  网友分享于:2015-08-24  浏览:0次
Linux 安装两个mysql服务
CentOS 6.4 下通过 yum 安装的 MySQL 是 5.1 版的,比较老,所以就想通过源代码安装高版本的 5.6.14。
一、卸载旧版本
  rpm -qa | grep mysql

有的话通过下面的命令来卸载掉
rpm -e mysql //普通删除模式
rpm -e --nodeps mysql // 强力删除模式,如果使用上面命令删除时,提示有依赖的其
它文件,则用该命令可以对其进行强力删除


二、安装mysql
需要使用到源码安装包,这里我选择5.6版本,首先需要安装编译需要的包
yum -y install make gcc-c++ cmake bison-devel ncurses-devel

下载mysql数据库
wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.14.tar.gz
tar xvf mysql-5.6.14.tar.gz
cd mysql-5.6.14

编译安装
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
make && make install


整个过程需要30分钟左右,请耐心等待
三、设置mysql配置
使用下面的命令查看是否有 mysql 用户及用户组
cat /etc/passwd 查看用户列表
cat /etc/group 查看用户组列表

如果没有就创建
groupadd mysql
useradd -g mysql mysql

修改/usr/local/mysql 权限
chown -R mysql:mysql /usr/local/mysql

然后进入安装mysql的路径
cd /usr/local/mysql


  执行初始化脚本,创建系统自带的数据库和表
scripts/mysql_install_db --basedir=/usr/local/mysql3307 --datadir=/usr/local/mysql3307/data --user=mysql3307

四、启动mysql服务
   添加服务,拷贝服务脚本到 init.d 目录,并设置开机启动
cp support-files/mysql.server /etc/init.d/mysql
chkconfig mysql on
service mysql start --启动 MySQL


   配置用户信息
   MySQL 启动成功后,root 默认没有密码,我们需要设置 root 密码。
   设置之前,我们需要先设置 PATH,要不不能直接调用 mysql
   修改/etc/profile 文件,在文件末尾添加
PATH=/usr/local/mysql/bin:$PATH
export PATH

   关闭文件,运行下面的命令,让配置立即生效
source /etc/profile

   现在,我们可以在终端内直接输入 mysql 进入,mysql 的环境了
    执行下面的命令修改 root 密码
mysql -uroot
mysql> SET PASSWORD = PASSWORD('123456');

    设置用户远程访问
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.%' IDENTIFIED BY 'password'
WITH GRANT OPTION;

    配置防火墙
     防火墙的 3306 端口默认没有开启,若要远程访问,需要开启这个端口
     打开/etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
service iptables restart

   安装数据库完成


    接着我们安装第二个mysql服务,可以选择拷贝第一次安装的路径内容到第二个mysql文件夹中或者再次编译安装mysql服务,这次如果安装则路径为
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql3307 \
-DMYSQL_DATADIR=/usr/local/mysql3307/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql3307/mysql.sock \
-DMYSQL_TCP_PORT=3307 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
make && make install


我安装的是3307端口的数据库,则配置如上;
 groupadd mysql3307
 useradd -g mysql3307 mysql3307

给3307配置用户和用户组,可以不用,我这里使用这个是为了将mysql3307数据库加入服务中,启动方便

需要对当前路径授权
 chown -R mysql:mysql /usr/local/mysql3307

 cd /usr/local/mysql3307


然后对第二个数据进行执行脚本
scripts/mysql_install_db --basedir=/usr/local/mysql3307 --datadir=/usr/local/mysql3307/data --user=mysql3307


cp support-files/mysql.server /etc/init.d/mysql3307

chkconfig mysql3307 on

进入3307端口数据库
srvice mysql3307 start

如果出现Starting MySQL. ERROR! The server quit without updating PID file (/usr/local/mysql3307/data/wserver.pid)
进入mysql 3306的数据库,复制里面的wserver.pid,然后改版里面的值即可。

然后进入3307端口数据库配置mysql
mysql -P3307 -uroot

如果出现ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'问题,则是没有关联mysql3307的sock,则在mysql3307文件夹中的my.cnf
vi my.cnf


配置文件:
basedir=/usr/local/mysql3307/ 
datadir=/usr/local/mysql3307/data 
socket=/var/lib/mysql3307/mysql.sock
port=3307
配置完成后然后重新启动数据库进入
mysql -P3307 -uroot

依然报错
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/bin/mysql3307/mysql.sock' 

更换进入方式:
mysql -uroot -p -S /var/lib/mysql3307/mysql.sock

进入成功
设置3307数据库密码
SET PASSWORD = PASSWORD('123456');

设置远程访问用户
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'test' WITH GRANT OPTION;


成功!现在两个服务就按照成功了;

1 楼 ltsjava 2015-08-20  

文章评论

 程序员的样子
程序员的样子
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
总结2014中国互联网十大段子
总结2014中国互联网十大段子
程序员的鄙视链
程序员的鄙视链
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
中美印日四国程序员比较
中美印日四国程序员比较
Google伦敦新总部 犹如星级庄园
Google伦敦新总部 犹如星级庄园
写给自己也写给你 自己到底该何去何从
写给自己也写给你 自己到底该何去何从
编程语言是女人
编程语言是女人
那些性感的让人尖叫的程序员
那些性感的让人尖叫的程序员
做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
程序员都该阅读的书
程序员都该阅读的书
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
Java程序员必看电影
Java程序员必看电影
2013年中国软件开发者薪资调查报告
2013年中国软件开发者薪资调查报告
代码女神横空出世
代码女神横空出世
旅行,写作,编程
旅行,写作,编程
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
为什么程序员都是夜猫子
为什么程序员都是夜猫子
10个调试和排错的小建议
10个调试和排错的小建议
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
鲜为人知的编程真相
鲜为人知的编程真相
程序员应该关注的一些事儿
程序员应该关注的一些事儿
程序员必看的十大电影
程序员必看的十大电影
程序员和编码员之间的区别
程序员和编码员之间的区别
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
我的丈夫是个程序员
我的丈夫是个程序员
每天工作4小时的程序员
每天工作4小时的程序员
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
那些争议最大的编程观点
那些争议最大的编程观点
2013年美国开发者薪资调查报告
2013年美国开发者薪资调查报告
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
什么才是优秀的用户界面设计
什么才是优秀的用户界面设计
漫画:程序员的工作
漫画:程序员的工作
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
老程序员的下场
老程序员的下场
一个程序员的时间管理
一个程序员的时间管理
程序员的一天:一寸光阴一寸金
程序员的一天:一寸光阴一寸金
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有