分享好友 数据库首页 频道列表

Centos中安装多个mysql数据的配置实例

MySQL教程  2015-10-27 09:440

注:本文档做了两个MYSQL实例,多个实例方法以此类推

LINUX操作系统:centOS6.3 64bit(安装了系统默认开发包)
数据库一:
MYSQL版本:mysql-5.0.56
PORT:3306
系统目录:/usr/local/mysql3306
数据库二:
MYSQL版本:mysql-5.1.72
PORT:3307
系统目录:/usr/local/mysql3307

一.安装开发包(使用默认CENTOS更新源):

复制代码 代码如下:
# yum -y install wget gcc-c++ ncurses ncurses-devel cmake make perl bison openssl openssl-devel gcc* libxml2 libxml2-devel curl-devel libjpeg* libpng* freetype*

二.关闭iptables和SELINUX
复制代码 代码如下:
# service iptables stop
# setenforce 0
# vi /etc/sysconfig/selinux
---------------
SELINUX=disabled

---------------
三.安装mysql数据库实例
1.下载编译包:
复制代码 代码如下:
# su -
# mkdir ~/src
# cd src
# wget http://mysql.cdpa.nsysu.edu.tw/Downloads/MySQL-5.1/mysql-5.1.73.tar.gz
# wget http://down1.chinaunix.net/distfiles/mysql-5.0.56.tar.gz

2.安装前的初始配置工作:
1).创建一个Mysql用户
复制代码 代码如下:
# useradd mysql 

2).新建mysql下data和log子目录
复制代码 代码如下:
# mkdir /usr/local/mysql{3306,3307}/data         
# mkdir /usr/local/mysql{3306,3307}/log

3).修改目录的所属者以及所属组权限         
复制代码 代码如下:
# chown -R mysql:mysql /usr/local/mysql{3306,3307}/data/
# chown -R mysql:mysql /usr/local/mysql{3306,3307}/log/
# chmod 750 /usr/local/mysql{3306,3307}/data     
# chmod 750 /usr/local/mysql{3306,3307}/log 

4).创建mysql相关目录并配置权限
复制代码 代码如下:
# mkdir -p /usr/local/mysql{3306,3307}/etc
# chown -R mysql.mysql /usr/local/mysql{3306,3307}/etc
# mkdir -p /var/run/mysqld{3306,3307}
# chown -R mysql.mysql /var/run/mysqld{3306,3307}
# mkdir -p /var/lib/mysqld{3306,3307}
# chown -R mysql.mysql /var/lib/mysqld{3306,3307}
# cp /etc/my.cnf /usr/local/mysql{3306,3307}/etc

3.解包编译安装
编译数据库一:
复制代码 代码如下:
# cd ~/src
# tar -zxvf mysql-5.0.56.tar.gz   
# cd mysql-5.0.56 
./configure --prefix=/usr/local/mysql3306 --with-mysqld-user=mysql --sysconfdir=/usr/local/mysql3306/etc  --localstatedir=/usr/local/mysql3306/data --with-tcp-port=3306 -enable-assembler --with-mysqld-ldflags=-all-static --with-charset=utf8 --with-extra-charsets=gbk -with-extra-charsets=all --with-plugins=csv,innobase,myisam,heap --with-unix-socket-path=/tmp/mysql3306.sock
# make
# make install

编译数据库二:
复制代码 代码如下:
# cd ~/src
# tar -zxvf mysql-5.1.71.tar.gz   
# cd mysql-5.1.71
./configure --prefix=/usr/local/mysql3307 --with-mysqld-user=mysql --sysconfdir=/usr/local/mysql3307/etc  --localstatedir=/usr/local/mysql3307/data --with-tcp-port=3307 -enable-assembler --with-mysqld-ldflags=-all-static --with-charset=utf8 --with-extra-charsets=gbk -with-extra-charsets=all --with-plugins=csv,innobase,myisam,heap --with-unix-socket-path=/tmp/mysql3307.sock
# make
# make install


4.编写mysql配置项:
数据库一配置:

复制代码 代码如下:
# vi /usr/local/mysql3306/etc/my.cnf
-------------------------------------------------------
[mysqld]
datadir=/usr/local/mysql3306/data
socket=/tmp/mysql3306.sock
user=mysql
port=3306
pid-file=/var/lib/mysqld3306/mysql.pid
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
max_connections= 16384
skip-name-resolve
skip-locking
key_buffer = 256M
max_allowed_packet = 32M
table_cache = 3072
thread_cache_size = 256
sort_buffer_size = 16M
read_buffer_size = 4M
read_rnd_buffer_size = 16M
net_buffer_length = 256M
thread_stack = 8M
query_cache_size = 128M
query_cache_limit = 2M
wait_timeout=7200
interactive_timeout=7200
#log
log-error=/usr/local/mysql3306/log/error.log
log=/usr/local/mysql3306/log/mysql.log
long_query_time=2
log-slow-queries= /usr/local/mysql3306/log/slowquery.log
log-bin= /usr/local/mysql3306/log/bin.log
expire_logs_days = 15
sync_binlog = 1
max_binlog_cache_size = 4294967295
local-infile=0
[mysqld_safe]
log-error=/var/log/mysqld3306.log
pid-file=/var/run/mysqld3306/mysqld.pid

-------------------------------------------------------
数据库二配置:
复制代码 代码如下:
# vi /usr/local/mysql3307/etc/my.cnf
-------------------------------------------------------
[mysqld]
datadir=/usr/local/mysql3307/data
socket=/tmp/mysql3307.sock
user=mysql
port=3307
pid-file=/var/lib/mysqld3307/mysql.pid
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
max_connections= 16384
skip-name-resolve
skip-locking
key_buffer = 256M
max_allowed_packet = 32M
table_cache = 3072
thread_cache_size = 256
sort_buffer_size = 16M
read_buffer_size = 4M
read_rnd_buffer_size = 16M
net_buffer_length = 256M
thread_stack = 8M
query_cache_size = 128M
query_cache_limit = 2M
wait_timeout=7200
interactive_timeout=7200
#log
log-error=/usr/local/mysql3307/log/error.log
log=/usr/local/mysql3307/log/mysql.log
long_query_time=2
log-slow-queries= /usr/local/mysql3307/log/slowquery.log
log-bin= /usr/local/mysql3307/log/bin.log
expire_logs_days = 15
sync_binlog = 1
max_binlog_cache_size = 4294967295
local-infile=0
[mysqld_safe]
log-error=/var/log/mysqld3307.log
pid-file=/var/run/mysqld3307/mysqld.pid
-------------------------------------------------------

5.将mysql的库文件路径加入系统的库文件搜索路径中
方法一:直接做软链接

复制代码 代码如下:
# ln -s /usr/local/mysql3306/lib/mysql /usr/lib/mysql

方法二:利用ldconfig导入系统库
复制代码 代码如下:
# echo "/usr/local/mysql3306/lib" >> /etc/ld.so.conf.d/mysql.conf
# ldconfig

6.输出mysql的头文件到系统头文件
复制代码 代码如下:
# ln -s /usr/local/mysql3306/include/mysql /usr/include/mysql

注: 此处只需将一个mysql实例的库文件添加到系统库,无需多次添加

7.进入相应实例的安装路径,初始化各自配置脚本
数据库一配置:

复制代码 代码如下:
# cd /usr/local/mysql3306
# scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql3306/data

数据库二配置:
复制代码 代码如下:
# cd /usr/local/mysql3307
# scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql3307/data

8.复制mysql启动脚本到系统服务目录,并更改脚本配置
复制代码 代码如下:
# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld3306
# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld3307

数据库一配置:
复制代码 代码如下:
# vi /etc/init.d/mysqld3006

搜索如下行,红色标注的为添加的参数:
---------------------------------------------
复制代码 代码如下:
basedir=/usr/local/mysql3306
datadir=/usr/local/mysql3306/data
conf=/usr/local/mysql3306/etc/my.cnf
$bindir/mysqld_safe --defaults-file=$conf --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &
--------------------------------------------

数据库二配置:
复制代码 代码如下:
# vi /etc/init.d/mysqld3007

搜索如下行,红色标注的为添加的参数:
---------------------------------------------
复制代码 代码如下:
basedir=/usr/local/mysql3307
datadir=/usr/local/mysql3307/data
conf=/usr/local/mysql3307/etc/my.cnf

$bindir/mysqld_safe --defaults-file=$conf --datadir=$datadir --pid-file=$server_pid_file $other_args >/dev/null 2>&1 &
--------------------------------------------


9.系统启动项相关配置
数据库一配置:

复制代码 代码如下:
# chkconfig --add mysqld3306  #添加开机启动服务
# chkconfig --level 35 mysqld3306 on  #设置mysql启动

数据库二配置:
复制代码 代码如下:
# chkconfig --add mysqld3307 
# chkconfig --level 35 mysqld3307 on

10.启动mysql
数据库一启动:
复制代码 代码如下:
# service mysqld3306 start 

数据库二启动:
复制代码 代码如下:
# service mysqld3307 start 

11 添加mysql命令集到系统全局变量
注:如果系统之前未安装mysql客户端,可以将编译好的mysql命令集导入系统全局变量
以后就可以直接使用mysql命令集,而不需要使用绝对路径访问.
复制代码 代码如下:
# echo "PATH=$PATH:/usr/local/mysql3306/bin;export PATH" >> /etc/profile
# source /etc/profile

12. 设置初始账户,并登陆后台:
数据库一:
复制代码 代码如下:
# /usr/local/mysql3306/bin/mysqladmin -u root password 123456   #设置超级管理员密码
# /usr/local/mysql3306/bin/mysql -P3306 -S/tmp/mysql3306.sock -uroot -p123456 #连接数据库

数据库二:
# /usr/local/mysql3307/bin/mysqladmin -u root password 123456   #设置超级管理员密码
# /usr/local/mysql3307/bin/mysql -P3307 -S/tmp/mysql3307.sock -uroot -p123456 #连接数据库

注: 因为加了mysql环境变量,以后系统后台可以直接使用mysql命令登录,这里使用绝对路径是为了规范操作
# mysql -P3307 -S/tmp/mysql3307.sock -uroot -p123456

13.端口测试:

复制代码 代码如下:
#lsof -i:3306
#lsof -i:3307

OK,大功告成!

查看更多关于【MySQL教程】的文章

展开全文
相关推荐
反对 0
举报 0
评论 0
图文资讯
热门推荐
优选好物
更多热点专题
更多推荐文章
CentOS系统中Redis数据库的安装配置指南
Redis是一个基于主存存储的数据库,性能很强,这里我们就来看一下CentOS系统中Redis数据库的安装配置指南,包括将Redis作为系统服务运行的技巧等,需要的朋友可以参考下

0评论2016-06-26545

CentOS系统中安装MySQL和开启MySQL远程访问的方法
这篇文章主要介绍了CentOS系统中安装MySQL和开启MySQL远程访问的方法,包括MySQL的随机启动等操作的介绍,需要的朋友可以参考下

0评论2016-05-18220

CentOS 7下MySQL服务启动失败的快速解决方法
CentOS 7下MySQL服务启动失败怎么办?下面小编就为大家带来一篇CentOS 7下MySQL服务启动失败的快速解决方法。现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

0评论2016-05-18120

CentOS 6.5下yum安装 MySQL-5.5全过程图文教程
在linux安装mysql是一个困难的事情,yum安装一般是安装的mysql5.1,现在经过自己不懈努力终于能用yum安装mysql5.5了。下面通过两种方法给大家介绍CentOS 6.5下yum安装 MySQL-5.5全过程,一起学习吧

0评论2016-05-18128

CentOS系统上安装配置Oracle数据库的详细教程
这篇文章主要介绍了CentOS系统上安装配置Oracle数据库的详细教程,包括安装过程中一些常见错误问题的解决,需要的朋友可以参考下

0评论2016-05-18180

在CenOS系统下安装和配置Redis数据库的教程
这篇文章主要介绍了在CenOS系统下安装和配置Redis数据库的教程,Redis是一个可基于内存的高性能NoSQL数据库,需要的朋友可以参考下

0评论2015-11-16172

CentOS下将MySQL 5.1升级到MySQL 5.5的步骤
这篇文章主要介绍了CentOS下将MySQL 5.1升级到MySQL 5.5的步骤,需要的朋友可以参考下

0评论2015-11-12139

CentOS 7中安装mysql server的步骤分享
这篇文章主要介绍了CentOS 7中安装mysql server的步骤分享,需要的朋友可以参考下

0评论2015-11-12116

centos mysql 修改数据库目录
centos mysql修改数据库目录的方法。

0评论2015-11-06112

centos下mysql主从复制设置详解
centos5.4下mysql主从复制步骤详解,大家参考使用吧

0评论2015-11-0665

分享CentOS下MySQL最新版本5.6.13源码安装过程
这篇文章主要介绍了CentOS下安装MySQL最新版本5.6.13过程分享,需要的朋友可以参考下

0评论2015-11-05132

mysql自动化安装脚本(ubuntu and centos64)
这篇文章主要介绍了mysql自动化安装脚本(ubuntu and centos64),需要的朋友可以参考下

0评论2015-10-22172

Centos 6.3将Mysql 5.1.61升级为mysql 5.6.19遇到的问题及解决方式
mysql5.6.19已经发布很久了,一直没有去升级,最近做项目需要mysql5.5以上,索性直接上5.6.19吧,原本以为升级这种事情,分分钟就完成了,没想到还是出了各种问题,下面把部分记录分享给大家

0评论2015-09-2182

Centos 5.2下安装多个mysql数据库配置详解
在实际应用中,有时候,我们需要在同一台服务器上安装两个甚至多个mysql数据库,那么,如何来操作呢,今天我们就来探讨下这个问题

0评论2015-09-21137

在Centos 5.5 上编译安装mysql 5.5.9
由于开发需要,现在需要安装安装MySQL 5.5.9,使用了rpm安装总是出错,而且还有好多依事关系麻烦,此外也没有找到二进制的包,只好找源码包进行编译;

0评论2015-09-2166

centos中找回MariaDB数据库root用户权限的方法
这篇文章主要介绍了centos中找回MariaDB数据库root用户权限的方法,本文写的很意思,相信大家会眼前一亮,需要的朋友可以参考下

0评论2015-09-15127

更多推荐