`
chenzehe
  • 浏览: 538174 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

mysqld_multi 配置MySQL多实例

阅读更多

本文讲利用MySQL源码安装MySQL并用mysqld_multi配置多实例。

 

1、下载MySQL源码安装版本

     到MySQL官网查找到相应版本下载,本文下载的是5.1版本

wget -c ftp://ftp.mirrorservice.org/sites/ftp.mysql.com/Downloads/MySQL-5.1/mysql-5.1.60.tar.gz
 

2、解压安装

tar -zxv -f mysql-5.1.60.tar.gz

./configure --prefix=/usr/local/mysql --with-charset=utf8 
--with-extra-charset=all --enable-thread-safe-client --enable-assembler 
--with-readline --with-big-tables 
--with-named-curses-libs=/usr/lib/libncursesw.so.5

make && make install

 

3、添加用户和用户组

groupadd mysql #添加mysql用户组
useradd -g mysql mysql #创建mysql用户并把它放到mysql组下
chown -R root:mysql /usr/local/mysql #修改mysql文件属性

 

4、初始化数据目录

#把用到的工具添加到/usr/bin目录
ln -s /usr/local/mysql/bin/mysqld_multi /usr/bin/mysqld_multi
ln -s /usr/local/mysql/bin/mysql_install_db /usr/bin/mysql_install_db

#初始化四个数据目录
mysql_install_db --datadir=/usr/local/var/mysql1 --user=mysql
mysql_install_db --datadir=/usr/local/var/mysql2 --user=mysql
mysql_install_db --datadir=/usr/local/var/mysql3 --user=mysql
mysql_install_db --datadir=/usr/local/var/mysql4 --user=mysql

#修改属性
chown -R mysql /usr/local/var/mysql1 
chown -R mysql /usr/local/var/mysql2
chown -R mysql /usr/local/var/mysql3 
chown -R mysql /usr/local/var/mysql4 

 

5、配置多实例启动脚本

    从MySQL的源码中把复制到/etc/init.d/目录下

cp /usr/local/src/mysql-5.1.60/support-files/mysqld_multi.server /etc/init.d/mysqld_multi.server

#修改basedir和bindir为安装路径
basedir=/usr/local/mysql
bindir=/usr/local/mysql/bin
 

6、配置多实例数据库配置文件

     用mysqld_multi工具查看该配置文件的模板方法,命令为:mysqld_multi --example

     在/etc/目录下创建创建文件/etc/mysqld_multi.cnf,把mysqld_multi --example产生的文件粘进去,修改相应属性,如:mysqld,mysqladmin,socket,port,pid-file,datadir,user等。

[mysqld_multi]
mysqld     = /usr/local/mysql/bin/mysqld_safe
mysqladmin = /usr/local/mysql/bin/mysqladmin
#user       = mysql
#password   = my_password

[mysqld1]
socket     = /usr/local/var/mysql1/mysql1.sock
port       = 3306
pid-file   = /usr/local/var/mysql1/mysql1.pid
datadir    = /usr/local/var/mysql1
#language   = /usr/local/mysql/share/mysql/english
user       = mysql

[mysqld2]
socket     = /usr/local/var/mysql2/mysql2.sock
port       = 3307
pid-file   = /usr/local/var/mysql2/mysql2.pid
datadir    = /usr/local/var/mysql2
#language   = /usr/local/mysql/share/mysql/english
user       = mysql

[mysqld3]
socket     = /usr/local/var/mysql3/mysql3.sock
port       = 3308
pid-file   = /usr/local/var/mysql3/mysql3.pid
datadir    = /usr/local/var/mysql3
#language   = /usr/local/mysql/share/mysql/english
user       = mysql

[mysqld4]
socket     = /usr/local/var/mysql4/mysql4.sock
port       = 3309
pid-file   = /usr/local/var/mysql4/mysql4.pid
datadir    = /usr/local/var/mysql4
#language   = /usr/local/mysql/share/mysql/english
user       = mysql
 

7、启动多实例数据库

将/usr/local/mysql/bin加到$PATH环境变量里
export PATH=/usr/local/mysql/bin:$PATH

#查看数据库状态
mysqld_multi --defaults-extra-file=/etc/mysqld_multi.cnf report
#结果都为没有运行
Reporting MySQL servers
MySQL server from group: mysqld1 is not running
MySQL server from group: mysqld2 is not running
MySQL server from group: mysqld3 is not running
MySQL server from group: mysqld4 is not running

#启动
mysqld_multi --defaults-extra-file=/etc/mysqld_multi.cnf start
#结果为
Reporting MySQL servers
MySQL server from group: mysqld1 is not running
MySQL server from group: mysqld2 is not running
MySQL server from group: mysqld3 is not running
MySQL server from group: mysqld4 is not running

#启动具体某一个实例可在start、stop后面加上具体数据1,2,3等


 

8、查看运行结果

#查看相应端口是否已经被监听
netstat -tunlp

#查看是否有活动进程
ps -aux|grep mysql
 

9、登录相应数据库

#进入端口为3306的数据库
mysql -uroot -p -h127.0.0.1 -P3306

#通过sock文件登录
mysql -uroot -p -S /usr/local/var/mysql1/mysql1.sock

 #查看socket文件
mysql> SHOW VARIABLES LIKE 'socket';

#查看pid文件
mysql> SHOW VARIABLES LIKE '%pid%';
 

 

 

 

分享到:
评论
1 楼 HB_YYM_929 2012-12-27  
[color=cyan][/color]

相关推荐

    mysql使用mysqld_multi部署单机多实例的方法教程

    在本教程中,我们将探讨如何使用`mysqld_multi`工具在单台机器上部署多个MySQL实例。`mysqld_multi`是MySQL提供的一种管理工具,它允许在同一个服务器上运行多个`mysqld`进程,每个进程都有独立的数据目录、端口和...

    使用mysqld_multi实现单系统中配置多个MySQL服务器实例

    本文讲利用MySQL源码安装MySQL并用mysqld_multi配置多实例。 1、下载MySQL源码安装版本 到MySQL官网查找到相应版本下载,本文下载的是5.1版本 代码如下: wget -c ftp://ftp.mirrorservice.org/sites/ftp.mysql....

    mysql多实例详细配置

    在多实例环境中,每个MySQL实例都拥有自己的数据目录(`datadir`)、日志文件、配置文件等,确保了数据的隔离性和安全性。通过这种方式,企业可以在同一硬件资源上灵活部署多个项目或服务,避免了为每个项目单独购买...

    shell使用mysqld_multi自动做多实例从库脚本

    在IT领域,特别是数据库管理中,使用`mysqld_multi`工具可以方便地管理多个MySQL实例,这在大型系统或分布式环境中尤其有用。本文将详细解释如何利用shell脚本配合`mysqld_multi`来自动化处理多实例从库的设置。 `...

    DRBD+mysql多实例

    启动和停止 MySQL 多实例服务,使用 `mysqld_multi` 工具,并传入实例编号。例如,`mysqld_multi start 2` 会启动编号为 2 的实例,而 `mysqld_multi stop 2` 会停止该实例。在启用实例前,需要使用 `mysql_install_...

    mysql多实例部署

    完成配置后,可以通过`mysqld_multi`命令来启动或停止MySQL实例: ```bash /usr/bin/mysqld_multi start ``` 同样地,也可以通过如下命令来停止所有实例: ```bash /usr/bin/mysqld_multi stop ``` #### 六、总结 ...

    mysqld_multi

    mysql多实例管理工具

    生产环境MySQL 5.5.x单机多实例配置实践

    其次,利用`mysqld_multi`工具在同一台服务器上启动两个MySQL实例,通过配置文件实现两个实例之间的差异化配置。 #### 配置过程 ##### 源码编译安装MySQL 1. **安装所需系统软件包**: - 使用`yum`命令安装一...

    MySQL实现多实例方式运行揭秘

    这通常通过运行mysqld_multi工具来实现,该工具可以根据配置文件来启动或停止指定的MySQL实例。 6. 验证实例启动状态。使用netstat命令检查端口号,确认MySQL实例是否已经成功启动,并监听在配置的端口上。 7. ...

    MySQL多实例配置方案

    1. **多套独立目录**:为每个MySQL实例设置独立的数据、配置、日志文件目录。 2. **每个实例有独立的数据**:每个实例拥有自己的初始化数据,这可以通过初始化数据过程来完成。 3. **多个端口**:不同的MySQL实例...

    MYSQL集群搭建指引文档 (2).pdf

    为了管理多个MySQL实例,还需要在MySQL的主目录下创建一个名为my_multi.cnf的配置文件,包含`mysqld_multi`配置段,指定`mysqld_safe`和`mysqladmin`的位置。这使得能够通过`mysqld_multi`工具启动和管理多个MySQL...

    CentOS 7搭建多实例MySQL8的详细教程(想要几个搞几个)

    三、配置MySQL实例 1. 配置第一个实例`mysql_01`: - 创建`my.cnf`配置文件,指定端口号、安装目录、数据存放路径等: ``` cd ./mysql_01 vim my.cnf ``` 内容如下: ``` [mysqld] port=10085 basedir=/...

    MySQL中文手册MySQL中文手册

    5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL服务器模式 5.3.3. 服务器系统变量 5.3.4. 服务器状态变量 5.4. mysql_fix_...

    MySQL数据库运维管理.pptx

    `mysqld_multi`则允许管理多个MySQL实例。 在安全管理方面,检查监听端口是确保数据库服务正常运行的基本操作。可以使用`netstat`命令查看系统是否在预期端口上监听MySQL服务。同时,修改MySQL的root用户密码是非常...

    CENTOS7环境下配置MYSQL-MHA部署实践

    本文将详细介绍如何在CENTOS7环境下配置MySQL-MHA,并通过实例展示整个部署过程。 #### 系统环境准备 - **硬件环境**: - 硬盘空间:30GB - 内存:8GB - 网卡:集成 - **软件环境**: - 操作系统:CentOS 7 ...

Global site tag (gtag.js) - Google Analytics