-
MYSQL RC 和RR隔离级别差别性
所属栏目:[MySql教程] 日期:2022-04-04 热度:70
今天一个朋友咨询我关于MYSQL 的LOCK,我针对他的问题,整理了一篇BLOG,供大家了解学习,有兴趣的同学可以参考来测试加深原理的理解。 结论: 1.RR隔离级别并发性没有RC好 2、开发过程中,事务要尽量小,结束要快 3、需要创建合适的索引来减少全表扫的概[详细]
-
mysql innodb cluster 创建
所属栏目:[MySql教程] 日期:2022-04-04 热度:157
环境准备: 1 下载和安装需要的软件(本人的软件版本--都是mysql Community中的Linux Generic版本) mysql-server(mysql-8.0.17-linux-glibc2.12-x86_64.tar.xz) mysql-router(mysql-router-8.0.17-linux-glibc2.12-x86_64.tar.xz) mysql-shell(mysql-shell-8[详细]
-
MySQL DDL详情揭示
所属栏目:[MySql教程] 日期:2022-04-04 热度:107
MySQL中DDL语句,即数据定义语言,用于创建、删除、修改、库或表结构,对数据库或表的结构操作。常见的有create,alter,drop等。这类语句通常会耗费很大代价,特别是对于大表做表结构变更。本篇文章会揭露各类DDL语句执行的详细情况。 1.Online DDL简介[详细]
-
linux下apache+mysql+php开发环境纯源代码编辑搭建
所属栏目:[MySql教程] 日期:2022-04-04 热度:104
linux下apache+mysql+php开发环境纯源代码编译搭建(转)[@more@] 记录一下我在fedora core 1下通过源代码编译出来的apache+mysql+php开发环境的全部过程 通常安装一台服务器当然使用rpm是最方便的,不需要考虑太多配置的问题,就可以轻松获得需要的环境了。[详细]
-
MySQL执行计划explain输出列结果剖析
所属栏目:[MySql教程] 日期:2022-04-03 热度:148
MySQL执行计划explain输出列结果剖析: 1) id:每个被独立执行的操作的标识,表示对象被操作的顺序;id值大,先被执行;如果相同,执行顺序从上到下。 2) select_type:查询中每个select子句的类型; 3) table:名字,被操作的对象名称,通常是表名,但有[详细]
-
分析MYSQL BINLOG 二进制格式 --准备工作
所属栏目:[MySql教程] 日期:2022-04-03 热度:167
分析MYSQL BINLOG 二进制格式 --准备工作: 一、目的 本系列文件主要为了说明 1、为什么说row格式较statement更占空间 2、为什么说row格式的binlog更加安全 3、INSERT/UPDATE/DELETE是生成的row binlog如何直接看懂二进制格式 4、DDL生成的binlog是怎么样[详细]
-
mysqldump导入存储步骤和其注释
所属栏目:[MySql教程] 日期:2022-04-03 热度:191
mysqldump导出存储过程时,会有注释的。但是在用mysql命令导入时,如果不加说明,注释会自动过滤掉。为了连同注释一起导入进去,可以添加--comment参数。 例子: 导出存储过程: set date=%date:~0,4%-%date:~5,2%-%date:~8,2% set v_backup_file_name=xed[详细]
-
MySQL5.7.17源码编译安装时的注意点
所属栏目:[MySql教程] 日期:2022-04-03 热度:130
解压: # cd /root #tar xvzf boost_1_59_0.tar.gz 进入boost_1_59_0目录: #cd /root/boost_1_59_0 然后是编译安装,直接执行bootstrap.sh就可以: #sh ./bootstrap.sh Building Boost.Build engine with toolset gcc... tools/build/v2/engine/bin.linux[详细]
-
MySQL内的derived table
所属栏目:[MySql教程] 日期:2022-04-03 热度:157
初始MySQL中的derived table还是在一个偶然的问题场景中。 下面的语句在执行的时候抛出了错误。 UPDATE payment_data rr SET rr.penalty_date = 2017-4-12 where rr.id = (SELECT min(r.id) FROM payment_data r where data_no = (SELECT data_no FROM use[详细]
-
SQL业务审查与优化
所属栏目:[MySql教程] 日期:2022-04-03 热度:88
审核 什么是业务审核 类似与code review 评审业务Schema和SQL设计 偏重关注性能 是业务优化的主要入口之一 审核提前发现问题,进行优化 上线后通过监控或巡检发现问题,进行优化 Schema设计审核 表和字段命名是否合规 字段类型,长度设计是否适当 表关联关[详细]
-
MySQL 5.7中如何定位DDL被阻塞的难题
所属栏目:[MySql教程] 日期:2022-04-03 热度:118
在MySQL 5.7中,针对MDL,引入了一张新表performance_schema.metadata_locks,该表可对外展示MDL的相关信息,包括其作用对象,类型及持有等待情况。 开启MDL的instrument 但是相关instrument并没有开启(MySQL 8.0是默认开启的),其可通过如下两种方式开[详细]
-
将数据从文本导入至mysql
所属栏目:[MySql教程] 日期:2022-04-03 热度:154
将数据从文本导入到mysql(转)[@more@]access中可以将文本中的数据轻松导入表中,mysql中用起来没那么方便,其实起来也很简单。 首先将数据记录按行处理好用特定的字符分开如:, 记录形如: aaa,bbb,ccc,ddd,eee fff,ggg,hhh,iii,jjj,kkk 就行,建立loaddate[详细]
-
mysql的auto_increment细说
所属栏目:[MySql教程] 日期:2022-04-03 热度:193
MySQL的中AUTO_INCREMENT类型的属性用于为一个表中记录自动生成ID功能,可在一定程度上代替Oracle,PostgreSQL等数据库中的sequence。 在数据库应用,我们经常要用到唯一编号,以标识记录。在MySQL中可通过数据列的AUTO_INCREMENT属性来自动生成。 当插入[详细]
-
半同步与加强半同步复制
所属栏目:[MySql教程] 日期:2022-04-03 热度:152
先要明白事务提交的三个阶段,这里不再赘述。 半同步复制:主上已经提交了,但是日志还没来得及传到备库,这时候宕机了,在半同步看来,主库其他会话看来是透明的,看到的是他提交了的数据,但是如果这时候切换到slave,slave上又没有提交,没有看到这部分[详细]
-
翻译5.7手册InnoDB部分第一篇——InnoDB介绍
所属栏目:[MySql教程] 日期:2022-04-02 热度:63
翻译5.7手册InnoDB部分第一篇InnoDB介绍: 1. InnoDB介绍 InnoDB是一个高可靠,高性能的多用途数据库存储引擎。在MySQL5.7中InnoDB是默认使用的存储引擎,当然,你可以配置其它存储引擎,比如没有通过ENGINE设置为InnoDB的建表语句。 InnoDB的关键特性 列[详细]
-
批量删除binlog 的脚本
所属栏目:[MySql教程] 日期:2022-04-02 热度:153
MySQL DBA 偶尔会遇到因为空间不足,在不能删除data之前,可能先想到的是通过删除binlog 暂时解决空间问题。周末本人也遇到这样的情况,因为不在电脑旁边,找领导出马并且使用手机把命令打出发给老板去删除binlog。想想还是写一个binlog 删除工具吧,以后遇[详细]
-
MYSQL_审计日志查看
所属栏目:[MySql教程] 日期:2022-04-02 热度:62
MYSQL_审计日志查看: 1.下载插件libaudit_plugin.so 2. 安装插件 MYSQL_审计日志查看 # unzip audit-plugin-percona-5.7-1.1.7-805-linux-x86_64.zip # cd /u01/soft/audit-plugin-percona-5.7-1.1.7-805/lib # cp libaudit_plugin.so /usr/local/mysql/l[详细]
-
MySQL ERROR Slave I O Found a Gtid_log_event or Previous
所属栏目:[MySql教程] 日期:2022-04-02 热度:54
MySQL 5.6的复制中断,发生下面错误 2018-10-18 12:20:02 15374 [ERROR] Slave I/O: Found a Gtid_log_event or Previous_gtids_log_event when @@GLOBAL.GTID_MODE = OFF. Error_code: 1784 2018-10-18 12:20:02 15374 [ERROR] Slave I/O: Relay log writ[详细]
-
把ACCESS的数据导入到Mysql中
所属栏目:[MySql教程] 日期:2022-04-02 热度:167
把ACCESS的数据导入到Mysql中(转)[@more@]在建设网站的过程中,经常要处理一些数据的导入及导出.在Mysql数据库中,有两种方法来处理数据的导出(一般). 1. 使用select * from table_name into outfile file_name; 2. 使用mysqldump实用程序 下面我们来[详细]
-
MongoDB与MySQL关于写确认的异同
所属栏目:[MySql教程] 日期:2022-04-02 热度:177
不同的写入确认级别或配置,是数据库提供给用户的一种自我控制的能力,用户可以针对自身业务的特点、数据管理的需要、性能的考虑、数据一致性以及服务可用性各种因素进行考虑,选择适合的数据库配置,来实现自身的需要。 首先介绍几个重要的概念,这些概念[详细]
-
初识MariaDB之1——MariaDB的安装
所属栏目:[MySql教程] 日期:2022-04-02 热度:176
初识MariaDB之1MariaDB的安装: 一、MariaDB介绍 MariaDB是Mysql在被Oracle收购后由原作者重新开发的一种关系型数据库程序,由于是同一个作者,所以在操作上与Mysql十分类似,版本也是相互对应,如:MariaDB5.5对应Mysql的5.5版本,但从Mysql5.6开始对应的[详细]
-
说GTID - GTID的组成和存储
所属栏目:[MySql教程] 日期:2022-04-02 热度:101
GTID是什么 GTID(Global Transaction Identifier)是事务在第一次提交时获取到的唯一标识,该标识在整个的复制拓扑中具有唯一性。 GTID组成 GTID = source_id:transaction_id(c4e5d4a0-a9be-11e9-b444-080027f22add:7) 直观看,GTID有两部分组成,sourc[详细]
-
pt-query-digest查询日志分析工具
所属栏目:[MySql教程] 日期:2022-04-02 热度:64
pt-query-digest查询日志分析工具: 用法示例 (1)直接分析慢查询文件: pt-query-digest slow.log slow_report.log (2)分析最近12小时内的查询: pt-query-digest --since=12h slow.log slow_report2.log (3)分析指定时间范围内的查询: pt-query-digest sl[详细]
-
数据库和表操作
所属栏目:[MySql教程] 日期:2022-04-02 热度:143
-- 创建数据库 -- 创建 classroom 数据库 create database 数据库名 default character set 字符编码 collate 排序规则; eg: create database classroom default character set utf8 collate utf8_general_ci; -- 查看所有数据库 show databases; -- 选择[详细]
-
之于mycat读写分离主从切换策略的调研
所属栏目:[MySql教程] 日期:2022-04-02 热度:151
当从库宕机后,读请求会全部转移到主库上,对业务无影响。 1、当主库宕机后 目前,我们的writehost只设置了一个主库,当主库宕机后,通过mycat的 读写请求会全部报错,如下所示: 读请求: mysql select * from t1; ERROR 1184 (HY000): 拒绝连接 写请求:[详细]