mysql主从配置

MySQL主从备份

流过昼夜 提交于 2019-12-08 13:08:31
刚刚实践了MySQL的主从备份,记录如下: 1. 主库 1)在my.cnf的mysqld节点添加如下配置 log-bin=mysql-bin #开启二进制日志 server-id = 1 #主数据库id为2 replicate_wild_do_table=exam.% #只同步exam库下的表 relay_log=mysqld-relay-bin #记录中继日志 log-slave-updates=YES #从服务器同步后记录日志 2)建用户(供从库同步用) > grant replication slave on *.* to 'slave'@'172.17.0.1' identified by 'slave'; 3)查看日志名和位置(供从库同步用) 2. 从库 1)在my.cnf的mysqld节点添加如下配置 log-bin=mysql-bin #开启二进制日志 server-id = 2 #从数据库id为2,不能相同。 replicate_wild_do_table=exam.% #只同步exam库下的表 relay_log=mysqld-relay-bin #记录中继日志 log-slave-updates=YES #从服务器同步后记录日志 2)配置主库 change master to master_host='172.17.0.1', master_port=3307,

在windows下安装mysql5.6版本

不打扰是莪最后的温柔 提交于 2019-12-08 09:54:22
1,双击 mysql-installer-community-5.6.24.0 安装,接受用户许可协议 2,选择安装类型:Developer Default 默认安装类型,开发模式,该选项代表典型个人用桌面工作站,假定机器上运行着多个桌面应用程序,将MySQL服务器配置成使用最少的系统资源;Server only 仅作为服务器,该选项代表服务器,MySQL服务器可以同其它应用程序一起运行,例如FTP、email和web服务器,MySQL服务器配置成使用适当比例的系统资源;Client only 仅作为客户端,Full 完全安装类型,Custom自定义安装类型 ;作为服务器类型数据库安装,需选自定义安装类型,安装需自定义安装路径。 3,选择安装选项,MySql Servers必选项,核心组件,可根据系统位数对应选择,Applications应用和MySQL Connectors连接器可不选,Documentation类似于帮助文档资料可选。 4,选择文件安装目录路径及数据保存目录路径(我的为毛没有?) 5,选择配置选项, Developer Machine(开发机器),Server Machine(服务器),Dedicated MySQL Server Machine(专用MySQL服务器),前二个上面有讲描述,专用MySQL服务器-该选项代表只运行MySQL服务的服务器

Linux学习-基于CentOS7的ProxySQL实现读写分离

时间秒杀一切 提交于 2019-12-08 00:00:31
一、实验环境  主机:3台,一台ProxySQL(192.168.214.37),两台主从复制,master(192.168.214.17),slave(192.168.214.27)  系统:CentOS7.6  数据库:mariadb-server-5.5.60(光盘yum源)  ProxySQL:proxysql-1.4.16 二、相关步骤 1、实现读写分离前,先实现主从复制,即master(192.168.214.17),slave(192.168.214.27)实现主从复制,实现方法可参照:https://www.cnblogs.com/hovin/p/11990677.html 2、安装ProxySQL,在192.168.214.37这台主机上操作,安装方法有  基于RPM下载安装:https://github.com/sysown/proxysql/releases  基于YUM仓库安装:   cat <<EOF | tee /etc/yum.repos.d/proxysql.repo   [proxysql_repo]   name= ProxySQL YUM repository   baseurl=http://repo.proxysql.com/ProxySQL/proxysql-1.4.x/centos/\$releasevergpgcheck=1  

MYSQL面试必读

孤人 提交于 2019-12-07 16:03:36
Mysql 的存储引擎,myisam和innodb的区别。 答: 1.MyISAM 是非事务的存储引擎,适合用于频繁查询的应用。表锁,不会出现死锁,适合小数据,小并发。 2.innodb是支持事务的存储引擎,合于插入和更新操作比较多的应用,设计合理的话是行锁(最大区别就在锁的级别上),适合大数据,大并发。 数据表类型有哪些 答:MyISAM、InnoDB、HEAP、BOB,ARCHIVE,CSV等。 MyISAM:成熟、稳定、易于管理,快速读取。一些功能不支持(事务等),表级锁。 InnoDB:支持事务、外键等特性、数据行锁定。空间占用大,不支持全文索引等。 MySQL数据库作发布系统的存储,一天五万条以上的增量,预计运维三年,怎么优化? a. 设计良好的数据库结构,允许部分数据冗余,尽量避免join查询,提高效率。 b. 选择合适的表字段数据类型和存储引擎,适当的添加索引。 c. mysql库主从读写分离。 d. 找规律分表,减少单表中的数据量提高查询速度。 e。添加缓存机制,比如memcached,apc等。 f. 不经常改动的页面,生成静态页面。 g. 书写高效率的SQL。比如 SELECT * FROM TABEL 改为 SELECT field_1, field_2, field_3 FROM TABLE. 对于大流量的网站,您采用什么样的方法来解决各页面访问量统计问题?

mysql主从复制要点

拈花ヽ惹草 提交于 2019-12-07 15:41:59
普通文件的数据同步 1.NFS 网络共享可以同步数据 2samba共享数据 3定时任务或守护进程结合rsync +scp 4 inotify +rsync触发实时数据同步 5ftp数据同步 6ssh key+scp/rsync mysql支持单向,双向,链式级联,实时异步复制,一台服务器充当服务器,而另一个服务器充当 slave服务器 应用场景有利于数据库架构的健壮性,提升访问速度和易于管理 主从服务器互为备份 主从服务器架构的设置,可以大大的加强数据库架构的健壮性,例如:当主服务器 出现问题时,我们可以人工或自动的切换到服务器继续提供服务 这类似我们前面课程中的nfs存储数据通过inotify+rsync同步备份到备份的nfs 非常类似,只不过mysql的同步方案,是其自带的工具 非人为的硬件,服务故障,对于人为的drop,delete无能为力 主从服务器读写分离承担网站的压力 主从服务器架构可通过php(大型网站),java或代理软件(mysqlproxy,amoeba)对用户的请求实现读写分离,则通过 从服务器上仅仅用户的select查询请求,降低用户 门户网站分布式dbproxy,(读写分离,hash负债均衡,健康检查) 一主多从 如何实现mysql主从读写分离 1.通过程序实现读写分离性能,效率最佳,推荐

LInux CentOS7 MySql 5.7.23主从复制(主从同步)

跟風遠走 提交于 2019-12-07 03:21:01
一、编辑主服务器mysql 配置文件 vim /etc/my.conf server-id=1 #服务器id (主从必须不一样) log-bin=mysql-bin #打开日志(主机需要打开),这个mysql-bin也可以自定义,这里也可以加上路径作为主机的配置 binlog-do-db=ifast-new2 #要给从机同步的库 #binlog-do-db= binlog-ignore-db=mysql #不给从机同步的库(多个写多行) binlog-ignore-db=information_schema binlog-ignore-db=performance_schema binlog-ignore-db=sys expire_logs_days=7 #自动清理 7 天前的log文件,可根据需要修改 二、设置成功 重启Mysql 服务 service mysqld restart 三、创建备份账号与测试log_bin是否成功开启 1.登录主数据库 show variables like '%log_bin%'; 2.设置备份账户信息 grant replication slave on *.* to 'backup'@'%' identified by '123456'; 3.查看快照 show master status\G 关闭主数据库的读取锁定 unlock

mysql数据库高可用解决方案

故事扮演 提交于 2019-12-06 22:18:00
MySQL数据库作为最基础的数据存储服务之一,在整个系统中有着非常重要的地位,因此要求其具备 高可用性 是无可厚非的。有很多解决方案能实现不同的 SLA (服务水平协定),这些方案可以保证 数据库服务器 在硬件或软件出现故障时服务继续可用。 高性能性需要解决的主要有两个问题,即如何实现 数据共享 或同步数据,另一个是如何处理failover,数据共享一般的解决方案是通过SAN(Storage Area Network)来实现,而 数据同步 可以通过 rsync 软件或 DRBD 技术来实现;failover的意思就是当服务器死机或出现错误时可以自动切换到其他备用的服务器,不影响服务器上业务系统的运行。本文重点介绍一下目前比较成熟的Mysql高性能解决方案。 1、主从复制解决方案 这是MySQL自身提供的一种高可用解决方案,数据同步方法采用的是MySQL replication技术。MySQL replication就是一个日志的复制过程,在复制过程中一个服务器充当主服务器,而一个或多个其他服务器充当从服务器,简单说就是从服务器到主服务器拉取二进制日志文件,然后再将日志文件解析成相应的SQL在从服务器上重新执行一遍主服务器的操作,通过这种方式保证数据的一致性。 MySQL replication技术仅仅提供了日志的同步执行功能,而从服务器只能提供读操作,并且当主服务器故障时

mysql5.7的主从切换

♀尐吖头ヾ 提交于 2019-12-06 17:03:28
mysql5.7的主从切换 主库: master 10.11.0.211 从库: slave 10.11.0.210 目标:主从切换,将slave切换为master,master切换为slave 一、使用innobackup进行主从同步设置 # 应用的连接数据库的账号配置 grant select,insert,update,delete on task.* to task_user@"%" identified by "cmslU6WFkX2pBylwINy2T"; # 修改root密码 update mysql.user set authentication_string = password('root'), password_expired = 'N', password_last_changed = now() where user = 'root'; # 设置主从同步: # 备份主库 innobackupex --defaults-file="/etc/my.cnf" --user=root -p'root' --socket=/tmp/mysql.sock --apply-log --use-memory=1G /opt/2019-12-06_15-51-53 # 应用事务 innobackupex --defaults-file="/etc/my.cnf" -

mysql router使用配置

早过忘川 提交于 2019-12-06 16:42:47
mysql router使用配置 参考资料: https://www.jianshu.com/p/7fc8d77bea59 一、架构图 介绍: MySQL Router是处于应用client和dbserver之间的轻量级代理程序,它能检测,分析和转发查询到后端数据库实例,并把结果返回给client。是mysql-proxy的一个替代品。 Router实现读写分离,程序不是直接连接数据库IP,而是固定连接到mysql router。MySQL Router对前端应用是透明的。应用程序把MySQL Router当作是普通的mysql实例,把查询发给MySQL Router,而MySQL Router会把查询结果返回给前端的应用程序。 从数据库服务器故障,业务可以正常运行。由MySQL Router来进行自动下线不可用服务器。程序配置不需要任何修改。 主数据库故障,由MySQL Router来决定主从自动切换,业务可以正常访问。程序配置不需要做任何修改。 二、读写分离原理 MySQL Router接受前端应用程序请求后,根据不同的端口来区分读写,把连接读写端口的所有查询发往主库,把连接只读端口的select查询以轮询方式发往多个从库,从而实现读写分离的目的。读写返回的结果会交给MySQL Router,由MySQL Router返回给客户端的应用程序。 三、实验环境 编号 主机名 IP

mysql主从

夙愿已清 提交于 2019-12-06 16:26:23
1.准备两台虚拟机,在两台虚拟机上(centos6)安装好MySQL , yum install mysql mysql-server 2. 开启mysql, service mysqld start 3. 关闭防火墙和selinux,service iptables stop , setenforce 0 4. 配置mysql主文件 vim /etc/my.cnf 在配置文件中: 5.重启MySQL, service mysqld restart 6. 进入MySQL 7.创建一个用户并授权 8. 主(master)的上面配置完毕,查看日志 9. 开始配置 从(slave)在从的机子上安装好mysql (yum -y install mysql mysql-server) 10.开启mysql,service mysqld start 11. 配置mysql文件,vim /etc/my.cnf 12. 重启mysql,service mysql restart 13. 进入mysql,停止 slave同步: mysql> slave stop; Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> change master to -> master_host='192.168.43.131', //master的ip ->