1、一台linux服务器怎么安装多个mysql数据库并配置主从
1、关闭Liunx系统的防火墙,如果忘了,你下面的测试连接必定会失败,切记,切记,切记。
2、yum安装lrzsz和cmake
yum -y install lrzsz;
yum -y install cmake;
首先熟悉MySql数据库,很多人都是直接安装原生版的MySql数据库(就是官网上下载的数据库安装包),也有人用的是MySql的衍生版数据库,如percona,我用的就是这种,下面我会分别说明原生版和衍生版MySql数据库的安装和主从配置。
2、MYSQL主从同步,新增的表会不会自动在从服务器同步
当然会,mysql主从复制是通过binlog日志来进行了。master会生成binlog日志,slave会开启2个线程,一个IO线程,主要是连接master,将master的binlog复制到slave的中继日志中,另外一个则是sql线程,会读取中继日志执行基于语句的复制(mysql默认是基于语句的复制),将master的变化复制到slave中。此外还有基于行的复制和混合复制。
3、MySql服务器怎么架设主从数据库服务器呢?
大致步骤如下:主MySQL服务器:192.168.3.1备MySQL服务器:192.168.3.2配置文件路径:/etc/my.cnfMySQL服务状态:停止-------------------------主服务器配置-------------------编辑配置文件:vi
/etc/my.cnf找到[mysqld]在它下面添加内容:server-id=1log-bin=backuplogbinlog-do-db=test#如果有多个数据库需要同步,添加多行即可#binlog-do-db=test2保存my.cnf配置文件。启动mysql:service
mysqld
start用root登录mysql,为同步数据创建新帐号:grant
file,select,replication
slave
on
*.*
to
'test'@'%'
identified
by
'123456';------------------------备服务器配置-------------------------编辑配置文件:vi
/etc/my.cnf在[mysqld]下加入:server-id=2master-host=192.168.3.1master-user=testmaster-password=123456master-port=3306#replicate-do-db=test
#此配置项为设置仅同步的数据库名,其它数据库忽略(建议不设置此选项)保存并启动mysql即可。如果需要查看同步状态,可分别在主从服务器上用如下命令查看:主服务器:show
master
status;从服务器:show
slave
status\G------------------值得说明的两个文件-----------------备份服务器上的/var/lib/mysql/目录下有两个:master.info和relay-log.info它们记录了主服务器的配置信息和同步信息,如果出现备份服务器不能同步数据的问题,可尝试将这两个文件删除,让备服务器重新同步。备注:进行操作之前先备份下数据比较保险一点。
4、mysql 主从配置 需要什么网络环境
1、确保主数据库与从数据库一模一样。
例如:主数据库里的a的数据库里有b,c,d表,那从数据库里的就应该有一个模子刻出来的a的数据库和b,c,d表
2、在主数据库上创建同步账号。
GRANT REPLICATION SLAVE,FILE ON *.* TO 'mstest'@'192.168.1.112' IDENTIFIED BY '123456';
192.168.1.112:是运行使用该用户的ip地址
mstest:是新创建的用户名
123456:是新创建的用户名的密码
以上命令的详细解释,最好百度一下,写太多反到更加更不清思路。
3、配置主数据库的my.ini(因为是在window下,所以是my.ini不是my.cnf)。
[mysqld]
server-id=1
log-bin=log
binlog-do-db=mstest //要同步的mstest数据库,要同步多个数据库,就多加几个replicate-db-db=数据库名
binlog-ignore-db=mysql //要忽略的数据库
5、如何使用mysql 主从服务器
一. 准备服务器
准备两台主机,分别安装好Mysql (要相同版本),确定版本无误,确保mysql服务正常启动,确保两台主机处于同一个局域网中,确定好哪台做为主、备机器,假设A为主机,B为备机,假设:
A主机IP地址为:172.16.16.90 端口3306
B主机IP地址为: 172.16.99.98 端口3306
二. Mysql建立主-从服务器热备配置步骤
1. 创建同步用户
进入MySql操作界面,在主服务器上为从服务器建立一个连接帐户,该帐户必须授予REPLICATION SLAVE权限。
操作指令如下:
1) grant select,replication slave on *.* to 'replicate'@'172.16.99.98' identified by '1234567';
2) flush privileges;
2. 修改Mysql配置
如果上面的准备工作做好,就可以进行对Mysql配置文件进行修改了,首先找到主服务器Mysql安装文件所有在目录,找到my.ini文件用记事本打开。在[mysqld]下增加如下内容:
server-id = 1
log-bin=mysql-bin
binlog-do-db =test #需要备份的数据库,多个写多行
binlog-ignore-db = mysql #不需要备份的数据库,多个写多行
3. 重启mysql服务
修改完配置文件保存后,重启一下mysql服务。
4. 查看主服务器状态
进入A服务器Mysql 客户端输入命令
1)Show master STATUS;
2)返回结果如下:
注意看里面的参数,特别前面两个File和Position,在从服务器(Slave)配置主从关系会有用到的。
5. 从服务器Slave配置修改配置文件
因为这里面是以主-从方式实现mysql双机热备的,所以在从服务器就不用在建立同步帐户了,直接打开配置文件my.ini进行修改即可,道理还是同修改主服务器上的一样,只不过需要修改的参数不一样。
如下:
[mysqld]
server-id = 2
log-bin=mysql-bin
replicate-do-db = test
replicate-ignore-db =mysql
6. 重启mysql服务
修改完配置文件保存后,重启一下mysql服务。
7. 配置从服务器
先停止slave服务线程,这个是很重要的,如果不这样做会造成下面操作不成功,再用change mster 语句指定同步位置,操作如下:
1) stop slave;
2) change master to master_host='172.16.16.90',
master_user='replicate',master_password='1234567',master_port=3306,
master_log_file='mysql-bin.000001',master_log_pos=98;
3) start slave
4) show slave status
查看下面两项值均为Yes,即表示设置从服务器成功。
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
6、mysql主从原理如何配置
1.在主数据库服务器为从服务器添加一个拥有权限访问主库的用户:
GRANT REPLICATION SLAVE ON *.* TO ' test'@'%' IDENTIFIED BY 'test';
(%表示允许所有IP,可设置指定从服务器IP)
添加用户后:
可在从服务器上用mysql -h127.0.0.1 -utest -ptest; 来测试是否有权限访问主数据库
2.在主据库配置文件加上:
#master config
server-id = 1
log-bin = mysql-bin
3.在从服务器数据库配置文件:
server-id = 2
master-host = 10.0.0.199
master-user = test
master-password = test
replicate-do-db = test
master-port = 3306
log-bin = mysql-bin
如果你的一切配置顺利
你在从服务器上输入命令:show slave status\G
成功情况:
Slave_IO_Running:yes
Slave_SQL_Running:yes
在主服务器上输入show master status
7、Mysql“集群”和”主从“两者的区别
1.Mysql cluster: share-nothing,分布式节点架构的存储方案,以便于提供容错性和高性能。
需要用到mysql cluster安装包,在集群中的每一个机器上安装。
有三个关键概念:Sql节点(多个),数据节点(多个),管理节点(一个),数据节点之间采用的是同步复制来保证各节点之间的数据一致性。
同步复制:
a) Master执行提交语句时,事务被发送到slave,slave开始准备事务的提交。
b) 每个slave都要准备事务,然后向master发送OK(或ABORT)消息,表明事务已经准备好(或者无法准备该事务)。
c) Master等待所有Slave发送OK或ABORT消息,如果Master收到所有 Slave的OK消息,它就会向所有Slave发送提交消息,告诉Slave提交该事务;如果 Master收到来自任何一个Slave的ABORT消息,它就向所有 Slave发送ABORT消息,告诉Slave去中止事务。
e) 每个Slave等待来自Master的OK或ABORT消息。如果Slave收到提交请求,它们就会提交事务,并向Master发送事务已提交 的确认;如果Slave收到取消请求,它们就会撤销所有改变并释放所占有的资源,从而中止事务,然后向Masterv送事务已中止的确认。
f) Master收到来自所有Slave的确认后,就会报告该事务被提交(或中止),然后继续进行下一个事务处理。
由于同步复制一共需要4次消息传递,故mysql cluster的数据更新速度比单机mysql要慢。所以mysql cluster要求运行在千兆以上的局域网内,节点可以采用双网卡,节点组之间采用直连方式。
2.主从(Master-Slave): 主从机器上安装mysql community(普通版)就可以。
主从之间是通过mysql的replication来保证数据的一致性。相对mysql cluster的数据同步方式来讲是异步的。
Replication:主节点要开启binlog,设置一个唯一的服务器id(局域网内唯一);从节点设置服务器id,binlog记录了master上的所有操作,会被复制到从节点的relaylog并在从节点上回放。
8、mysql主从复制主服务器和从服务器哪个消耗的大?
如果是一主一从,只是这个复制过程的话那消耗差不多的资源;不过一般都是一主多从,这样主的压力就打了,他需要给多个从传送日志文件,还要自己的写任务。所以一般都是把读放在从服务器,降低主的压力。
9、mysql服务器互为主从怎么配置
1、修改MySQL配置文件
两台MySQL均如要开启binlog日志功能,开启方法:在MySQL配置文件[MySQLd]段中加上log-bin=MySQL-bin选项
两台MySQL的server-ID不能一样,默认情况下两台MySQL的serverID都是1,需将其中一台修改为2即可
2、将192.168.1.201设为192.168.1.202的主服务器
在192.168.1.201上新建授权用户
10、mysql主从服务器的复制和恢复
你已经还原主服务器了,那还恢复从服务器干什么?直接mysqlmp过去不就行了,然后在代建好主从,这样数据就完全一样了,根本没有必要在从服务器上在还原。