您的位置:

linux下mysql主从配置的简单介绍

本文目录一览:

一台linux服务器怎么安装多个mysql数据库并配置主从

1、关闭Liunx系统的防火墙,如果忘了,你下面的测试连接必定会失败,切记,切记,切记。

2、yum安装lrzsz和cmake

yum -y install lrzsz;

yum -y install cmake;

首先熟悉MySql数据库,很多人都是直接安装原生版的MySql数据库(就是官网上下载的数据库安装包),也有人用的是MySql的衍生版数据库,如percona,我用的就是这种,下面我会分别说明原生版和衍生版MySql数据库的安装和主从配置。

Linux下指定mysql数据库数据配置主主同步的实例

一、

概念:

数据库同步

(主从同步

---

主数据库写的同时

往从服务器写数据)

数据库同步

(主主同步

---

两台数据库服务器互相写数据)

二、

举例

主主数据库同步服务器配置

数据库服务器(A)

主数据库

IP:192.168.1.134

数据库服务器(B)

主数据库

IP:192.168.1.138

两台服务器同步的用户名为:

bravedu

密码:

brave123

一、主数据库操作设置(A):

创建同步用户名

允许连接的

用户IP地址

(非本机IP)

复制代码

代码如下:

grant

replication

slave

on

*.*

to

'bravedu'@'192.168.1.%'

identified

by

'brave123';

flush

privileges;

更改mysql配置文件

复制代码

代码如下:

[mysqld]

server-id

=

1

log-bin=/www/mysql/binlog/binlog

(路径要根据自己的安装设置)

binlog-do-db

=

dbname

(要同步的数据库名)

binlog-ignore-db=mysql

#相对应主从数据库同步不同的地方

复制代码

代码如下:

log-slave-updates

sync_binlog=1

auto_increment_offset=1

auto_increment_increment=2

replicate-do-db

=

dbname

replicate-ignore-db

=

mysql,information_schema

重启mysql服务器

查看主数据库同步状态

IP:

***.134

复制代码

代码如下:

mysqlflush

tables

with

read

lock;

mysqlshow

master

status\G

***************************

1.

row

***************************

File:

mysql-bin.000001

(这里注意

设置从服务器的时候要用)

Position:

106

(这里注意设置从服务器的时候要用)

Binlog_Do_DB:

dbname

Binlog_Ignore_DB:

mysql

1

row

in

set

(0.00

sec)

mysqlunlock

tables;

*****主服务器到目前位置设置完毕*******

二、从数据库操作设置(B):

创建同步用户名

复制代码

代码如下:

grant

replication

slave

on

*.*

to

'bravedu'@'192.168.1.%'

identified

by

'brave123';

flush

privileges;

更改mysql配置文件

复制代码

代码如下:

[mysqld]

server-id

=

2

log-bin=/www/mysql/binlog/binlog

(路径要根据自己的安装设置)

binlog-do-db

=

dbname

(要同步的数据库名)

binlog-ignore-db=

mysql,information_schema

#相对于主从同步不同的地方

binlog-do-db

=

dbname

binlog-ignore-db=mysql

log-slave-updates

sync_binlog=1

auto_increment_offset=2

auto_increment_increment=2

重启mysql服务器

查看主数据库同步状态

IP:

***.138

复制代码

代码如下:

mysqlflush

tables

with

read

lock;

mysqlshow

master

status\G

***************************

1.

row

***************************

File:

mysql-bin.000005

(这里注意

设置从服务器的时候要用)

Position:

106

(这里注意设置从服务器的时候要用)

Binlog_Do_DB:

dbname

Binlog_Ignore_DB:

mysql

1

row

in

set

(0.00

sec)

mysqlunlock

tables;

指定主主数据库服务器同步指令

注:IP为主服务器的IP,用户名,密码,log_file,log_post

服务器互相统一

可能这块操作

需要先

解除锁表、停止数据库状态、在运行后

在启动状态

复制代码

代码如下:

mysql

stop

slave;

#设置192.168.1.138数据库服务器配置

那么host

配置文件信息

就是

134的信息

mysql

change

master

to

master_host='192.168.1.134',

master_user='bravedu',

master_password='brave123',

master_log_file='mysql-bin.000005',

master_log_pos=106;

#设置192.168.1.134

数据库服务器配置

那么host

等配置文件信息

就是

134的信息

mysql

change

master

to

master_host='192.168.1.138',

master_user='bravedu',

master_password='brave123',

master_log_file='mysql-bin.000001',

master_log_pos=106;

mysql

start

slave;

mysql

unlock

tables;

查看主数据库同步状态

会出来很多信息

但是主要看这两个状态就行了

如果都是

yes

就可以了

复制代码

代码如下:

mysqlshow

slave

status\G;

Slave_IO_Running:

Yes

Slave_SQL_Running:

Yes

至此,主主数据库同步成功配置完成。

如何设置mysql主从同步时间间隔 linux

linux下配置mysql主从同步的步骤

一、主机环境

主机:

master操作系统:rhel6.0

IP:172.16.0.100

MySQL版本:5.1.47

从机:

slave操作系统:rhel6.0

IP:172.16.0.200

MySQL版本:5.1.47

二、创建数据库

分别登录master机和slave机的mysql:mysql –u root –p

创建数据库:create database repl;

三、master机和slave机的相关配置

1、修改master机器中mysql配置文件my.cnf,该文件在/etc目录下

在[mysqld]配置段添加如下字段

server-id=1

log-bin=mysql-bin

binlog-do-db=repl //需要同步的数据库,如果没有本行,即表示同步所有的数据库

binlog-ignore-db=mysql //被忽略的数据库

在master机上为slave机添加一同步帐号

grant replication slave on *.* to 'replication'@'172.16.0.200' identified by '123456';

重启master机的mysql服务:service mysqld restart

用show master status 命令看日志情况

mysqlshow master status;

+-----------------+------------+-------------------+-----------------------+

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+-----------------+------------+-------------------+-----------------------+

| log.000003 | 98 | repl | mysql |

+-----------------+------------+-------------------+-----------------------+

1 row in set (0.00 sec)

2、修改slave机中mysql配置文件

同样在[mysqld]字段下添加如下内容

server-id=2

master-host=172.16.0.100

master-user=repl

master-password=123456

master-port=3306

master-connect-retry=60

replicate-do-db=repl //同步的数据库,不写本行 表示 同步所有数据库

然后重启slave机的mysql

在slave机中进入mysql

mysqlstart slave;

mysqlshow slave status\G;

如果Slave_IO_Running、Slave_SQL_Running状态为Yes则表明设置成功。

这时 再执行show slave status\G

显示如下:

*************************** 1. row ***************************

Slave_IO_State: Waiting for master to send event

Master_Host: 192.168.1.222

Master_User: repl

Master_Port: 3306

Connect_Retry: 60

Master_Log_File: log.000003

Read_Master_Log_Pos: 98

Relay_Log_File: mysqld-relay-bin.000002

Relay_Log_Pos: 229

Relay_Master_Log_File: log.000003

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

Replicate_Do_DB:

Replicate_Ignore_DB:

Replicate_Do_Table:

Replicate_Ignore_Table:

Replicate_Wild_Do_Table:

Replicate_Wild_Ignore_Table:

Last_Errno: 0

Last_Error:

Skip_Counter: 0

Exec_Master_Log_Pos: 98

Relay_Log_Space: 229

Until_Condition: None

Until_Log_File:

Until_Log_Pos: 0

Master_SSL_Allowed: No

Master_SSL_CA_File:

Master_SSL_CA_Path:

Master_SSL_Cert:

Master_SSL_Cipher:

Master_SSL_Key:

Seconds_Behind_Master: 0

1 row in set (0.00 sec)

Slave_IO_Running: Yes Slave_SQL_Running: Yes

信息中如上两行都为Yes,说明配置成功。

五、测试主从服务器是否能同步

在主服务器上面新建一个表,必须在repl数据下

mysql use repl

Database changed

mysql create table test(id int,name char(10));

Query OK, 0 rows affected (0.00 sec)

mysql insert into test values(1,'zaq');

Query OK, 1 row affected (0.00 sec)

mysql insert into test values(1,'xsw');

Query OK, 1 row affected (0.00 sec)

mysql select * from test;

+------+------+

| id | name |

+-------+------+

| 1 | zaq |

| 1 | xsw |

+-------+------+

2 rows in set (0.00 sec)

在从服务器查看是否同步过来

mysql use repl;

Database changed

mysql select * from test;

+------+------+

| id | name |

+------+------+

| 1 | zaq |

| 1 | xsw |

+------+------+

2 rows in set (0.00 sec)

说明已经配置成功。

四、出现的问题

1. 当在执行start slave这条命令时,系统提示

ERROR 1200 (HY000): The server is not configured as slave; fix in config file or with CHANGE MASTER TO,

执行show slave status;又提示Empty set (0.00 sec)

原因:slave已经默认开启,要先关闭再开启

执行 slave stop;

再执行

change master to master_host='172.16.0.200',master_user='repl',master_password='123456', master_log_file='log.000003' ,master_log_pos=98;

2、出现错误提示 :Slave_IO_Running:NO

mysql的error日志中信息:

Slave I/O: error connecting to master 'replication@172.16.0.100:3306' - retry-time: 60 retries: 86400, Error_code: 1045

解决方法

1.在主mysql中创建slave远程连接访问时候的登录密码一定要设置对。

2.停止slave上的mysqld服务,从服务器上删除掉所有的二进制日志文件,包括一个数据目录下的master.info文件和hostname-relay-bin开头的文件,然后启动slave上的mysqld服务。

master.info::记录了Mysql主服务器上的日志文件和记录位置、连接的密码。

3.slave上Slave_SQL_Running: No ,提示某个表定义不正确

解决方法:

清空drop掉master和slave上的已经存在所有表,然后从master库上导入新的数据即可。

如何设置linux系统服务器的slave master

linux下配置mysql主从同步的步骤

一、主机环境

主机:

master操作系统:rhel6.0

IP:172.16.0.100

MySQL版本:5.1.47

从机:

slave操作系统:rhel6.0

IP:172.16.0.200

MySQL版本:5.1.47

二、创建数据库

分别登录master机和slave机的mysql:mysql –u root –p

创建数据库:create database repl;

三、master机和slave机的相关配置

1、修改master机器中mysql配置文件my.cnf,该文件在/etc目录下

在[mysqld]配置段添加如下字段

server-id=1

log-bin=mysql-bin

binlog-do-db=repl //需要同步的数据库,如果没有本行,即表示同步所有的数据库

binlog-ignore-db=mysql //被忽略的数据库

在master机上为slave机添加一同步帐号

grant replication slave on *.* to 'replication'@'172.16.0.200' identified by '123456';

重启master机的mysql服务:service mysqld restart

用show master status 命令看日志情况

如何在linux下安装mysql数据库并配置

在linux下安装mysql数据库并配置的流程比较繁琐,需要耐心调试,具体方法和步骤如下:

1.查找以前是否安装有mysql,使用下面命令:

rpm -qa|grep -i mysql

如果显示有如下包则说明已安装mysql

mysql-4.1.12-3.RHEL4.1

mysqlclient10-3.23.58-4.RHEL4.1

2.如果已安装,则需要删除已安装的数据库,使用以下命令来删除数据库

删除命令:rpm -e --nodeps 包名

( rpm -ev mysql-4.1.12-3.RHEL4.1 )

删除老版本mysql的开发头文件和库

命令:rm -fr /usr/lib/mysql

rm -fr /usr/include/mysql

注意:卸载后/var/lib/mysql中的数据及/etc/my.cnf不会删除,如果确定没用后就手工删除

rm -f /etc/my.cnf

rm -fr /var/lib/mysql

3.下载mysql的rpm包

可以通过wget下载具体的地址因为不能用链接请大家去官网去找

(1)MySQL-server-5.6.10-1.rhel5.x86_64.rpm:MySQL服务器;

(2)MySQL-client-5.6.10-1.rhel5.x86_64.rpm:MySQL客户端;

(3)MySQL-devel-5.6.10-1.rhel5.x86_64.rpm:Mysql开发依赖包。

下载后放到Liunx服务器中。

4.安装MySQL Server的rpm包

rpm -ivh MySQL-server-5.6.21-1.linux_glibc2.5.x86_64.rpm

安装完成后会生成root用户的随机密码,请使用“cat /root/.mysql_secret”或类似命令进行查看。

5.安装MySQL客户端

rpm -ivh MySQL-client-5.6.21-1.linux_glibc2.5.x86_64.rpm

6.安装MySQL开发依赖包

rpm -ivh MySQL-devel-5.6.21-1.linux_glibc2.5.x86_64.rpm

7.启动msyql

安装完成后mysql是没有启动的,运行mysql命令会提示如下错误:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

可使用如下命令启动MySQL:

service mysql start

或者使用如下命令:

/etc/init.d/mysql start

可使用SET PASSWORD命令修改root用户的密码,参考如下:SET PASSWORD = PASSWORD('root123456');

8.登录MySQL

使用mysql命令登录MySQL服务器,运行MySQL的命令时,会提示需要设置root用户密码。

9.设置开机自启动

/etc/init.d/mysql start

设置完成后重启系统,使用natstat –nat命令可看到MySQL的3306端口。

10.至此已经安装好了mysql数据库,当然现在我们的数据库还不支持远程连接,远程连接会出现以下代码:1130,ERROR 1130: Host 192.168.0.10 is not allowed to connect to this MySQL server,可以通过以下以下来解决。

11.改表法:在本机登入mysql后,更改“mysql”数据库里的“user”表里的“host”项,从”localhost”改为'%'。

mysql

mysqluse mysql;

mysqlselect 'host' from user where user='root

12.到此为止,mysql数据库在linux中安装完毕。

linux下配置mysql主从的简单介绍

2022-11-08
linux下mysql主从配置的简单介绍

2022-11-11
mysql主从数据库配置笔记,mysql主从配置文件

2022-11-22
linux安装mysql与配置的简单介绍

本文目录一览: 1、linux怎么配置mysql最新的 2、如何在linux中安装mysql 3、如何在linux下安装mysql数据库并配置 4、怎样在Linux环境下安装部署MySQL数据库系统

2023-12-08
linux版mysql下载的简单介绍

2022-11-20
linux下mysql权限配置的简单介绍

2022-11-17
linux中mysql主备搭建的简单介绍

2022-11-12
linux下mysql日志路径的简单介绍

2022-11-09
linux下mysql源码安装的简单介绍

2022-11-13
mysql主从服务器配置的优势,mysql主主配置

本文目录一览: 1、mysql主从复制搭建有几个ip 2、mysql主主复制 优缺点 3、安全最重要!MySQL配置主从复制,主主复制 4、为什么需要用到mysql 主从 博客园 5、mysql架构中

2023-12-08
mysql主从数据库设置与同步的简单介绍

2022-11-17
linux的mysql初始化的简单介绍

2022-11-12
mysql服务器主从同步设置的简单介绍

2022-11-21
配置mysql主从服务器(Mysql主从配置)

2022-11-13
mysql中单机多实例主从配置(mysql双主双从怎么配置)

2022-11-09
linuxmysql5.0下载的简单介绍

2022-11-21
mysql主从分离主数据库配置,MySQL主从数据库

2022-11-23
linux下安装源码mysql的简单介绍

2022-11-12
boot配置mysql数据库的简单介绍

2022-11-23
linux下启动mysql的简单介绍

2022-11-14