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

注:本文档做了两个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,大功告成!

(0)

相关推荐

  • CentOS 6.4安装配置LNMP服务器(Nginx+PHP+MySQL)

    准备篇 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT #允许80端口通过防火墙-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT #允许3306端口通过防火墙 备注:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败, 正确

  • 在CentOS上MySQL数据库服务器配置方法

    无意中还找到了CentOS的专业论坛,记住:http://www.centospub.com 于是,开始的学习配置 本次环境: CentOS系统, mysql-server(版本忘了,因为是使用yum安装的) 过程如下(转载,根据本人安装详细要求,略加修改) : 在提到网站构架的时候,我们经常能够看到"LAMP"的说法,它就是"Linux + Apache + MySQL + PHP". MySQL+PHP的协同成功案例已经很多了.比如国外的PHPBB,VBB,国内

  • CentOS+Nginx+PHP+MySQL详细配置(图解)

    一.安装MySQL 目前web服务器已经很少有跑静态页面的,如果要跑动态网站那当然就离不开数据库,虽然在以前文章中有写MySQL是怎么安装的,但是感觉好久没装MySQL,现在只把步骤贴出来,就不做过多的讲解了 #useradd mysql #tar zxvf mysql-5.0.40.tar.gz #cd mysql-5.0.40 #./configure --prefix=/usr/local/mysql #make && make install #/usr/local/mysql/b

  • CentOS 5.5下安装MySQL 5.5全过程分享

    打开终端 切换到根目录 [shell@localhost ~]# su -安装Mysql5.5之前先卸载CentOS自带的Mysql5.0. [root@localhost ~]# yum remove mysql 安装cmake 下载cmake源码包cmake-2.8.5.tar.gz [root@localhost ~]# wget http://www.cmake.org/files/v2.8/cmake-2.8.5.tar.gz编译安装[root@localhost]# tar xzvf

  • 解析centos中Apache、php、mysql 默认安装路径

    apache:如果采用RPM包安装,安装路径应在 /etc/httpd目录下apache配置文件:/etc/httpd/conf/httpd.confApache模块路径:/usr/sbin/apachectlweb目录:/var/www/html如果采用源代码安装,一般默认安装在/usr/local/apache2目录下 php:如果采用RPM包安装,安装路径应在 /etc/目录下php的配置文件:/etc/php.ini如果采用源代码安装,一般默认安装在/usr/local/lib目录下ph

  • 分享CentOS下MySQL最新版本5.6.13源码安装过程

    2个月前公司给DBA的测试服务器被收回去了,一直跟开发用一组DB,有些需要测试的小功能,需要不断重启db,为了不影响开发同事,自己又申请了一个虚拟机,准备安装最新的5.6.13版本的MySQL社区版. 1 download the tar.gzwget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.13.tar.gz/from/http://cdn.mysql.com/ 2 安装cmake软件包yum install cmake 3

  • 在CentOS 6 中安装WordPress(一) 安装Apache,Mysql, PHP环境

    1.安装Apache   在终端中输入下面的命令就可以安装Apache了: sudo yum install httpd sudo的意思是用root用户做什么操作.要点击y就确认下载安装了,非常方便. 然后用下面的命令来启动服务 sudo service httpd start 现在不用着急往下弄,直接在浏览器中输入DigitalOcean给你的IP地址,应该就可以访问到Apache的欢迎页面了.类似下面的样子: 是不是很酷?如果你的域名已经成功解析到你主机的IP地址上的话,用你的域名应该也可以

  • CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL)

    准备篇: 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT #允许80端口通过防火墙-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT #允许3306端口通过防火墙 备注:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败, 正

  • Centos 5.2下安装多个mysql数据库配置详解

    一.编译安装第一个MySQL 5.1.33 cd /opt /usr/sbin/groupadd mysql /usr/sbin/useradd -g mysql mysql -s /bin/nologin -d /usr/local/mysql tar -zxvf mysql-5.1.33.tar.gz cd mysql-5.1.33/ ./configure --prefix=/usr/local/mysql/ --enable-assembler --with-extra-charsets

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

    注:本文档做了两个MYSQL实例,多个实例方法以此类推 LINUX操作系统:centOS6.3 64bit(安装了系统默认开发包)数据库一:MYSQL版本:mysql-5.0.56PORT:3306系统目录:/usr/local/mysql3306数据库二:MYSQL版本:mysql-5.1.72PORT:3307系统目录:/usr/local/mysql3307 一.安装开发包(使用默认CENTOS更新源): 复制代码 代码如下: # yum -y install wget gcc-c++ n

  • php中实现xml与mysql数据相互转换的方法

    本文实例讲述了php中实现xml与mysql数据相互转换的方法.分享给大家供大家参考.具体分析如下: 这里提供了一个mysql2xml转换类,可以快速的把xml转换成mysql同时反之也可以把mysql转换成xml,下面看代码. mysql2xml.php类文件,用于备份MySQL数据的,代码如下: 复制代码 代码如下: <?php class MySQL2XML {         protected $conn;         protected $result;         prot

  • 在CentOS中安装Rancher2并配置kubernetes集群的图文教程

    准备 一台CentOS主机,安装DockerCE,用于安装Rancher2 一台CentOS主机,安装DockerCE,用于安装kubernetes集群管理主机 多台CentOS主机,安装DockerCE,用于运行kubernetes工作节点,工作节点需要与集群管理主机在同一个子网中 掌握Docker常用操作,了解K8s基本原理 安装Rancher2 第一步:执行命令,运行Rancher2,绑定主机端口80和443. docker run -d --restart=unless-stopped

  • jdk在centos中安装配置图文教程

    1下载jdk,地址: http://www.oracle.com/technetwork/java/javase/downloads/index.html 历史版本下载:打开页面拉到底部. 选择自己要的版本下载.我这里下载的是jdk-7u80-linux-x64.rpm 2删除系统自带jdk 查看是否安装了openjdk使用命令 rpm -qa | grep jdk sudo yum remove xxx(上面查询到的名字) 3修改安装包权限 sudo chmod 777 jdk-7u80-li

  • CentOS中安装python3.8.2的详细教程

    最新的CentOS8已经内置了Python2和Python3,出入Python2和Python3两个命令可以分别进入Python2和Python3. CentOS8内置的Python3版本为3.6.8,我们需要将它升级到3.8.2 首先下载Python3.8.2的安装包 wget https://www.python.org/ftp/python/3.8.2/Python-3.8.2.tgz 下载好安装包后,下载python3.8所需要的环境依赖包 yum install gcc openssl

  • Centos中安装jdk案例讲解

    step1:先移除centos自带的jdk rpm -qa|grep java rpm -e --nodeps xx step2:安装jdk (所有软件安装在/opt/tools) vim /etc/profile # JAVA_HOME settings JAVA_HOME=/opt/tools/jdk1.8.0_121 export PATH=$PATH:$JAVA_HOME/bin export JAVA_HOME step3:使环境变量生效,查询java版本 source /etc/pr

  • 如何在centos中安装redis插件bloom-filter

    目录 前言 步骤: 总结 前言 linux上安装redis就不说了,主要说redis安装插件布隆过滤器. 布隆过滤器:一种数据结构,是由一串很长的二进制向量组成,可以将其看成一个二进制数组.既然是二进制,那么里面存放的不是0,就是1,但是初始默认值都是0. 如下所示: 步骤: 1.下载redisbloom插件(redis官网下载即可) https://github.com/RedisLabsModules/redisbloom/ 找到最新的tag下载tar.gz格式即可: [root@redis

  • mysql数据存储过程参数实例详解

    MySQL 存储过程参数有三种类型:in.out.inout.它们各有什么作用和特点呢? 一.MySQL 存储过程参数(in) MySQL 存储过程 "in" 参数:跟 C 语言的函数参数的值传递类似, MySQL 存储过程内部可能会修改此参数,但对 in 类型参数的修改,对调用者(caller)来说是不可见的(not visible). drop procedure if exists pr_param_in; create procedure pr_param_in ( in id

  • CentOS 7 安装Percona Server+Mysql

    一.环境说明 (1)CentOS-7-x86_64,内核版本 uname -r 3.10.0-693.el7.x86_64 (2)Mysql版本 percona-server-5.6.29 (3)文件存放路径 /home/soft 二.安装前准备 (1)配置权限 groupadd mysql useradd -r -g mysql mysql (2)创建安装目录 mkdir /usr/local/mysql #mysql安装目录 chown -R mysql:mysql /usr/local/m

  • MySQL数据表基本操作实例详解

    本文实例讲述了MySQL数据表基本操作.分享给大家供大家参考,具体如下: 数据表的基本操作 1.主键约束要求主键列的数据唯一,并且不允许为空.主键能够唯一地识别表中的一条记录,可以结合外键来定义不同数据表之间的关系,并且可以加快数据库查询的速度.主键和记录之间的关系如同身份证和人之间的关系. 2.字表的外键必须关联父表的主键,且关联字段的数据类型必须匹配.如果类型不一样.创建子表时,就会出现错误:ERROR 1005(HY000):can't create table 'databases.ta

随机推荐