文章分类 -  mysql

Galera Cluster PXC
摘要:Galera Cluster介绍 Galera Cluster优点:多主架构:真正的多点读写的集群,在任何时候读写数据,都是最新的。同步复制:改善集群不同节点之间数据同步效率,基本没有延迟,在数据库挂掉之后,数据不会丢失。并发复制:从节点APPLY数据时,支持并行执行,更好的性能。故障切换:在出现数 阅读全文

posted @ 2021-06-25 04:39 1251618589 阅读(4) 评论(0) 推荐(0) 编辑

MHA高可用解决方案
摘要:MHAMaster High Availability,对主节点进行监控,可实现自动故障转移至其它从节点;通过提升某一从节点为新的主节点,基于主从复制实现,还需要客户端配合实现,目前MHA主要支持一主多从的架构,要搭建MHA,要求一个复制集群中必须最少有三台数据库服务器,一主二从。 原理:如果mas 阅读全文

posted @ 2021-06-21 21:13 1251618589 阅读(16) 评论(0) 推荐(0) 编辑

半同步复制
摘要:恢复内容开始 调度器(lvs或haproxy或nginx):调度器可设置mysql的读写分离,假设 master1负责"写" master2负责"读"图为主主复制架构 异步复制:1)用户向调度器发送对数据库的"写"请求,通过调度器将请求送往master12)master1完成数据更新后将结果通过调度 阅读全文

posted @ 2021-06-20 18:01 1251618589 阅读(2) 评论(0) 推荐(0) 编辑

级联复制
摘要:实现级联复制案例:三台主机实现级联复制(也即是也即是slave2复制slave1复制master) 需要在中间的slave1服务器启用以下配置 ,实现中间级联slave1能将master的二进制日志在本机进行数据库更新(slave只是复制master数据库数据到relaylog中其本身的二进制日志不 阅读全文

posted @ 2021-06-20 11:24 1251618589 阅读(4) 评论(0) 推荐(0) 编辑

一主多从
摘要:目的:在原有的一主一从的情况下增加多一个slave。思路:将master数据库完全备份并开启 --master-data=1 (主从复制功能),对完全备份文件的 change master to 进行完善(可通过 help master to 获取master信息模板),完善后在关闭二进制日志功能的 阅读全文

posted @ 2021-06-20 01:11 1251618589 阅读(7) 评论(0) 推荐(0) 编辑

主从复制
摘要:前述:主从复制依赖于二进制日志,也就是说想要实现主从复制必须开启二进制日志功能。原理:当主节点数据发生变化后会记录到二进制日志中,由二进制日志将写入的数据传送给slave的服务线程(dump Thread线程)其作用就是将传送过来的数据加载到内存中然后通过网络传送给slave节点。而slave节点也 阅读全文

posted @ 2021-06-19 16:00 1251618589 阅读(24) 评论(0) 推荐(0) 编辑

恢复误删除的表
摘要:案例说明:每天2:30做完全备份,早上10:00误删除表students,10:10才发现故障,现需要将数据库还原到10:10的状态,且恢复被删除的students表。第一步:通过完全备份提供的二进制日志的结束点,开始转储二进制日志文件(其中包含了2:30以后到10:10分的用户操作)。 mysql 阅读全文

posted @ 2021-06-19 01:02 1251618589 阅读(4) 评论(0) 推荐(0) 编辑

备份与恢复
摘要:注意事项: 1)mysql因为是inodb存储引擎支持事务,因此能够支持热备只需将事务的隔离级别改成REPEATABLE READ(可重复读),这样在某个特定的时间采用热备份,就不会出现在备份的途中将其他事务提交的结果备份进去。2)备份完数据后要做还原演练否则如果备份失败会造成无法还原的情况3)查看 阅读全文

posted @ 2021-06-18 16:11 1251618589 阅读(3) 评论(0) 推荐(0) 编辑

二进制日志(备份)
摘要:注意事项:1.查看二进制日志是否开启 show variables like 'sql_log_bin'; 2.查看二进制日志的保存格式<推荐改成row> show variables like 'binlog_format'; 3.将二进制日志文件的保存路径进行指定<写入到配置文件中>,logbi 阅读全文

posted @ 2021-06-16 23:42 1251618589 阅读(1) 评论(0) 推荐(0) 编辑

并发控制
摘要:1.为students表添加 read 锁使用另一个账号登录数据库修改students表查看其特性 lock tables students read; update students set ClassID=1 where StuID=1; <可以看到另一个账号在修改内容时因读锁的特性虽然可以读取 阅读全文

posted @ 2021-06-15 16:47 1251618589 阅读(9) 评论(0) 推荐(0) 编辑

索引优化
摘要:1.查看表的索引情况 show index from students\G; 2.创建索引index_name:索引名students(name):为students表的name这一列创建索引。 create index index_name on students(name); 3.使用索引查询数 阅读全文

posted @ 2021-06-15 15:15 1251618589 阅读(1) 评论(0) 推荐(0) 编辑

mysql练习
摘要:1. 在students表中,查询年龄大于25岁,且为男性的同学的名字和年龄 select age,gender,name from students where age>25 and gender='M'; 2. 以ClassID为分组依据,显示每组的平均年龄 select classid,avg 阅读全文

posted @ 2021-06-11 20:23 1251618589 阅读(11) 评论(0) 推荐(0) 编辑

将mysql使用的字符集修改成utf8mb4
摘要:早期 MySQL 版本默认为 latin1,从MySQL8.0开始默认字符集已经为 utf8mb4(支持中文)1.查看当前数据库所使用的字符集 SHOW VARIABLES LIKE 'collation%'; 2.修改配置文件使mysql服务器、mysql客户端、所有客户端都是用utf8mb4 v 阅读全文

posted @ 2021-06-09 11:50 1251618589 阅读(7) 评论(0) 推荐(0) 编辑

mysql常用配置修改
摘要:1.#持久修改mysql提示符(mysql提示符默认显示时间和当前所在的数据库等一些信息,访问数据库时常会搞不清楚自己所在何处因此非常困扰所以需要修改其配置文件更改提示符内容)<vim /etc/my.cnf 打开配置文件添加以下信息即可> [mysql] prompt="\\r:\\m:\\s(\ 阅读全文

posted @ 2021-06-03 15:02 1251618589 阅读(12) 评论(0) 推荐(0) 编辑

运行初始化脚本提高安全性
摘要:1.安装完mysql后运行初始化脚本。<命令行输入mysql(连击两次Tab键,将脚本显示出来)>2.运行脚本提示:Would you like to setup VALIDATE PASSWORD component?<是否要启动VALIDATE PASSWORD component组件来检查密码 阅读全文

posted @ 2021-06-02 21:40 1251618589 阅读(3) 评论(0) 推荐(0) 编辑

导航