MySQL多实例

mkdir /data

mkdir /data/3306

mkdir /data/3307

mkdir /data/3307/data

mkdir /data/3306/data

# vim /data/3306/my.cnf

[client]

port = 3306

socket = /data/3306/mysql.sock

[mysql]

[mysqld]

user = mysql

port = 3306

socket = /data/3306/mysql.sock

basedir = /opt/mysql/

datadir = /data/3306/data

pid-file = /data/3306/mysql.pid

relay-log = /data/3306/relay-bin

relay-log-info-file = /data/3306/relay-log.info

server-id = 3306

[mysqld_safe]

log-error=/data/3306/mysql_3306.err

pid-file = /data/3306/mysql.pid

# vim /data/3307/my.cnf

[client]

port = 3307

socket = /data/3307/mysql.sock

[mysql]

[mysqld]

user = mysql

port = 3307

socket = /data/3307/mysql.sock

basedir = /opt/mysql/

datadir = /data/3307/data

pid-file = /data/3307/mysql.pid

relay-log = /data/3307/relay-bin

relay-log-info-file = /data/3307/relay-log.info

server-id = 3307

[mysqld_safe]

log-error=/data/3307/mysql_3307.err

pid-file = /data/3307/mysql.pid

初始化数据库:

/opt/mysql/scripts/mysql_install_db --basedir=/opt/mysql --datadir=/data/3306/data/ --user=mysql

/opt/mysql/scripts/mysql_install_db --basedir=/opt/mysql --datadir=/data/3307/data/ --user=mysql

chown mysql. /data/* -R

启动数据库:

/opt/mysql/bin/mysqld_safe --defaults-file=/data/3307/my.cnf &

/opt/mysql/bin/mysqld_safe --defaults-file=/data/3306/my.cnf &

netstat -tnulp

ps -ef | grep mysql

连接mysql

mysql --socket=/data/3306/mysql.sock

mysql --socket=/data/3307/mysql.sock

关闭数据库

mysqladmin --socket=/data/3306/mysql.sock shutdown

mysqladmin --socket=/data/3307/mysql.sock shutdown

设置密码:

# mysqladmin --socket=/data/3307/mysql.sock  -u root password "3307"

# mysqladmin --socket=/data/3306/mysql.sock  -u root password "3306"

主从复制:

master:

server-id = 3306

log-bin = /data/3306/mysql3306-bin

slave:

server-id = 3307

重启数据库:

# mysqladmin --socket=/data/3307/mysql.sock  -u root -p"3307" shutdown

# mysqladmin --socket=/data/3306/mysql.sock  -u root -p"3306" shutdown

# /opt/mysql/bin/mysqld_safe --defaults-file=/data/3307/my.cnf &

# /opt/mysql/bin/mysqld_safe --defaults-file=/data/3306/my.cnf &

登录数据库检查:

# mysql --socket=/data/3306/mysql.sock -p"3306"

mysql> show variables like ‘server_id‘;

mysql> show variables like ‘log_bin‘;

mysql> grant replication slave on *.* to ‘rep‘@‘%‘ identified by "rep";

mysql> flush privileges;

mysql> flush tables with read lock;

# mysqldump -uroot -p"3306" --socket=/data/3306/mysql.sock --events -A -B |gzip >/server/backup/mysql_3306_bak.$(date +%F).sql.gz

# mysqldump -uroot -p"3306" --socket=/data/3306/mysql.sock |gzip >/server/backup/mysql_3306_bak.$(date +%F).sql.gz

mysql> flush unlock;

[[email protected] ~]# mysql --socket=/data/3307/mysql.sock -p"3307" -uroot << EOF

> change master to

> master_host=‘192.168.1.212‘,

> master_port=3306,

> master_user=‘rep‘,

> master_password=‘rep‘,

> master_log_file=‘mysql3306-bin.000001‘,

> master_log_pos=471;

> EOF

[[email protected] ~]#

[[email protected] data]# mysql --socket=/data/3307/mysql.sock -p"3307" -uroot -e "start slave;"

[[email protected] data]# mysql --socket=/data/3307/mysql.sock -p"3307" -uroot -e "show slave status\G;"

# mysql --socket=/data/3307/mysql.sock -p"3307" -uroot -e "show slave status\G;"|egrep  "Slave_IO_Running|Slave_SQL_Running"

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it

[[email protected] data]#

时间: 2024-08-19 06:52:26

MySQL多实例的相关文章

linux下mysql多实例安装(转)

转自:http://www.cnblogs.com/xuchenliang/p/6843990.html 1.MySQL多实例介绍 1.1.什么是MySQL多实例 MySQL多实例就是在一台机器上开启多个不同的服务端口(如:3306,3307),运行多个MySQL服务进程,通过不同的socket监听不同的服务端口来提供各自的服务:: 1.2.MySQL多实例的特点有以下几点 1:有效利用服务器资源,当单个服务器资源有剩余时,可以充分利用剩余的资源提供更多的服务. 2:节约服务器资源 3:资源互相

mysql多实例配置

mysql多实例配置  就是在一台服务器上运行多个mysql实例,每个实例需要一个独立的端口,实例的配置可以按实际需求进行设置  1.配置mysql多实例  # vim /etc/my.cnf[mysqld_multi]mysqld = /usr/local/mysql/bin/mysqld_safemysqladmin = /usr/local/mysql/bin/mysqladminuser = mysqllog = /database/log/mysqld-muti.log join_bu

mysql多实例的介绍与配置

mysql多实例,简单理解就是在一台服务器上,mysql服务开启多个不同的端口(如3306.3307),运行多个服务进程.这些 mysql 服务进程通过不同的 socket来监听不同的数据端口,进而互不干涉的提供各自的服务. 在同一台服务器上,mysql 多实例会去共用一套 mysql 应用程序,因此你在部署 mysql 的时候只需要部署一次 mysql程序即可,无需多次部署.但是,mysql多实例之间会各自使用不同的 my.cnf 配置文件.启动程序和数据文件.在提供服务方面,mysql多实例

MySQL多实例安装配置

MySQL多实例安装配置 一.基本概念 MySQL多实例就是,在一台机器上开启多个不同的服务端口(如:3306,3307,3308...),运行多个MySQL服务进程,这些服务进程通过不同的socket监听不同的端口提供服务. MySQL可以共用一套安全程序,使用不同的my.cnf配置文件,启动程序,数据文件. 逻辑上是独立的,但是一个实例过载过高的时候会对其他造成影响. MySQL多实例的作用与问题: 1.有效利用服务器资源 2.节约服务器资源 3.资源互相抢占问题 当某个服务实现并发生很高的

Windows下MySQL多实例安装/主从复制/重置密码

Windows创建MySQL多实例 安装MYSQL和实例1 运行mysql-installer-community-5.7.16.0.msi 选择组件 MySQL Server 5.7.16 – X64 MySQL Utilities 1.6.4 – X64 MySQL Workbench 6.3.7 – X64 执行安装 配置端口3306 Windows Service Name设置为MYSQL 复制实例 将C:\ProgramData\MySQL\MySQL拷贝为MYSQL1和MYSQL2文

mysql 多实例登录密码测试

最近在做mysql 多实例的时候,采用不同的方式登录mysql数据库,发现mysql -uroot -p -h 127.0.0.1 -P3308 ,登录时居然不要密码就可以登录,吓得我一身汗,经过检查终于找到原因记录下来,给小白们参考. [[email protected] ~]# mysql -uroot -p -S /data/3308/mysql.sock Enter password:          #需要输入密码 Welcome to the MySQL monitor.  Com

Mysql多实例进入db报错ERROR 2002

今天做了mysql多实例实验, 进入3307没问题 进入3306: 进入: mysql -S /data/3306/mysql.sock报错: ERROR 2002 (HY000):Can't connect to local MySQL server 解决: 1. kill 33934 kill 34228 2, 我把启动脚本mysql中的密码去掉了 我把启动脚本mysql 统统chmod +x处理(之前是700) 3,重启 mysqld_safe --defaults-file=/data/

MySQL单实例重置密码的两种方法

MySQL单实例重置密码的两种方法 在工作学习中,我们有时会忘记数据库的密码,下面是MySQL单实例密码重置的步骤. 说明: (1)[[email protected] ~]# cat /etc/redhat-release CentOS release 6.7 (Final) (2)[[email protected] ~]# mysql --version mysql  Ver 14.14 Distrib 5.7.13, for Linux (i686) using  EditLine wr

MySQL多实例安装

    MySQL数据库(一) 作者:Jack 归档:学习笔记 2017/6/19 目  录 MySQl数据库(一)... 3 第1章概述:... 4 1.1 MySQL介绍:... 4 1.2 MariaDB数据库的诞生背景介绍... 4 1.3 MySQL多实例介绍... 5 1.3.1 什么是MySQL多实例... 5 1.3.2 MySQL多实例的作用与问题... 6 1.4 MySQL多实例的生产应用场景... 7 第2章关系型数据库与非关系型数据库... 8 2.1 关系型数据库..

MySQL 5.6对已有Mysql单实例的机器,再添加mysql数据库,实现单机多实例

一.需求: 对已有Mysql单实例的机器,再添加两个mysql数据库,实现单机多实例. 一个绑定在端口3306,另外两个绑定在端口3307,3308: 数据分别存放在/data/mysqldata./data/mysqldata2./data/mysqldata3 三个实例均采用InnoDB作为默认的存储引擎,字符编码采用UTF-8: 三个实例均采用相同的性能优化配置参数: MySQL的源码安装请看我的另一篇博客http://yylinux.blog.51cto.com/8831641/1677