`
liuxingguome
  • 浏览: 27029 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
文章分类
社区版块
存档分类
最新评论

CentOS安装多个mysql

 
阅读更多
Centos中安装多个mysql数据的配置实例
作者: 字体:[增加 减小] 类型:转载 时间:2014-04-01
最近因为单位项目扩充,需要在原线上数据库服务器上加装一个mysql实例(实际上就是从新编译安装一个非3306的自定义端口,不同目录的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,大功告成!
分享到:
评论

相关推荐

    CentOS安装MySQL5.7

    本文详细介绍了在CentOS环境下安装MySQL 5.7的过程,包括创建MySQL用户、安装MySQL软件包、初始化MySQL、修改配置文件、启动服务、管理用户与权限等多个步骤。通过这些步骤,您可以顺利地在CentOS上部署并运行MySQL...

    CentOS6.5一键安装Mysql5.6

    总结,CentOS 6.5上的一键安装MySQL 5.6涉及了系统更新、依赖安装、MySQL仓库配置、服务安装、配置优化以及安全设置等多个环节。每个步骤都需要仔细操作,确保系统的稳定性和数据库的安全性。通过这个过程,你不仅...

    centos7安装配置mysql5.7教程全

    总结,安装配置MySQL 5.7在CentOS 7上是一个多步骤的过程,包括安装依赖、启动服务、安全配置、远程访问权限设定、日志与性能调整以及数据管理。理解并熟练掌握这些步骤对于管理Linux服务器上的数据库至关重要。在...

    CentOS下mysql成功安装

    安装MySQL服务器需要经过多个步骤,包括下载、编译、安装、初始化数据库、注册服务、启动服务、改变字符编码、将MySQL的bin加入到PATH中和配置用户密码和远程访问权限。但是,通过按照上述步骤进行安装,可以使MySQL...

    CentOs7下mysql5.7的下载安装以及主从同步、双主多从配置详情

    双主多从是指将两个 Mysql 服务器配置为主服务器,并将多个从服务器连接到这两个主服务器上,以实现高可用性和负载均衡。配置双主多从需要在 my.cnf 文件中添加以下内容: [mysqld] server-id = 1 log-bin = /var/...

    centos6.2安装两个mysql--宋正河整理

    在Linux系统中,尤其是服务器级别的操作系统,如CentOS 6.2,安装多个MySQL数据库实例是一种常见的需求,可能出于测试、隔离不同的应用环境或者服务高可用性的考虑。本教程由宋正河整理,将详细讲解如何在CentOS 6.2...

    centOS7离线安装mysql5.7.26完整rpm包.zip

    1. `net-tools-2.0-0.25.20131004git.el7.x86_64.rpm`:这是一个包含网络工具的包,例如`ifconfig`和`netstat`,它们在配置网络或检查网络状态时非常有用,可能在MySQL安装过程中需要这些工具来验证网络设置。...

    centos rpm方式安装mysql教程(非常详细)

    - 常见的解压结果包括多个RPM包,如`mysql-community-common`、`mysql-community-libs`等。 **2. 按顺序安装RPM包** - 安装顺序非常重要,遵循以下顺序进行安装: - `mysql-community-common` - `mysql-...

    centos7二进制安装MySQL5.7.docx

    CentOS 7上二进制安装MySQL 5.7的过程涉及多个步骤,这些步骤确保了数据库服务能够正确、稳定地运行。以下是对整个过程的详细解释: 1. **安装依赖包**: 在安装MySQL之前,需要确保系统中有必要的依赖库。在...

    CentOS7.5安装Mysql

    ### CentOS 7.5 安装与配置 MySQL 5.7 的详细步骤 #### 步骤一:获取 MySQL YUM 源 首先,需要访问 MySQL 官方网站以获取适用于 CentOS ...通过以上七个步骤,您就可以在 CentOS 7.5 上成功安装和配置 MySQL 5.7 了。

    CentOS7安装MySQL8.0图文教程

    CentOS7 安装 MySQL 8.0 需要注意多个知识点,包括下载和选择正确的安装包,卸载 mariadb,创建 mysql 目录,上传和解压安装包,安装 MySQL,初始化数据库,查看和修改密码,登陆数据库,远程访问授权等。

    centos 6.0安装MySQL mysql-5.1.59全过程

    ### CentOS 6.0安装MySQL 5.1.59全过程 #### 一、准备工作与下载MySQL源码 在开始安装MySQL之前,首先确保已经具备了以下条件: 1. **下载MySQL源码**:访问MySQL官方网站(http://www.mysql.com/downloads/)...

    centos6.2安装两个mysql.pdf

    根据提供的文件内容,以下知识点详细说明了在CentOS 6.2系统中安装两个MySQL实例...此外,在实际部署中,安装多个MySQL实例时,要特别注意不同实例之间的配置项需要有细微差别,以避免配置项冲突导致服务无法正常工作。

    Centos7 yum安装MySQL8

    在Centos7环境下使用yum工具安装MySQL8是一项涉及多个步骤的过程。首先,您需要了解MySQL Yum仓库提供了在Linux平台安装MySQL服务器、客户端和其他组件的RPM包。这些包还可以升级和替换由Linux发行版的原生软件仓库...

    Centos7安装mysql5.7yum list installed - grep mysql

    总的来说,安装MySQL 5.7.11在CentOS7上需要考虑多个步骤,包括卸载旧版本、安装新版本、设置初始密码、启动服务以及安全配置。按照上述步骤操作,可以顺利完成MySQL的安装和配置,为你的CentOS7系统提供一个稳定...

    linux学习之centOS安装mysql

    此外,MySQL采用分表存储机制,即数据不是存放在单一的大仓库中,而是分布在多个表中,这种设计提高了数据检索的速度和系统的灵活性。 MySQL软件提供两种版本:社区版和商业版。社区版通常适用于非商业用途或小型...

    CentOS7 源码安装MySQL5.6

    ### CentOS7 源码安装 MySQL 5.6 详细步骤及知识点解析 #### 一、准备工作:安装必要的依赖包 在正式安装 MySQL 5.6 之前,我们需要确保系统中已经安装了一些编译工具和其他必备组件。这些工具主要用于帮助我们...

    CentOS7下安装MySQL5.7安装与配置

    在多用户环境下,通过多个显示器和键盘鼠标同时操作,可以让您更加灵活地管理和维护数据库,这对于大型企业的IT部门尤其重要。 需要注意的是,在数据库管理的过程中,始终将安全性放在首位。定期更新系统和数据库...

    自动离线安装centos7,mysql,redis,nginx

    总的来说,离线安装CentOS7上的MySQL、Redis和Nginx涉及多个步骤,包括下载软件包、编译安装、配置服务以及设置监控。这个过程需要对Linux系统和这些服务有深入理解,但通过这种方法,我们可以灵活地在没有网络连接...

    Centos mysql 安装配置详解

    在Linux系统中,CentOS是广泛...总的来说,CentOS上安装MySQL涉及卸载旧版本、源码编译安装、用户与权限管理、数据库初始化以及服务配置等多个步骤。理解这些步骤并正确执行,将确保MySQL在你的CentOS系统上稳定运行。

Global site tag (gtag.js) - Google Analytics