-
MySQL执行计划explain输出列结果剖析
所属栏目:[MySql教程] 日期:2022-04-02 热度:130
MySQL执行计划explain输出列结果剖析: 1) id:每个被独立执行的操作的标识,表示对象被操作的顺序;id值大,先被执行;如果相同,执行顺序从上到下。 2) select_type:查询中每个select子句的类型; 3) table:名字,被操作的对象名称,通常是表名,但有[详细]
-
分析MYSQL BINLOG 二进制格式 --准备工作
所属栏目:[MySql教程] 日期:2022-04-02 热度:99
分析MYSQL BINLOG 二进制格式 --准备工作: 一、目的 本系列文件主要为了说明 1、为什么说row格式较statement更占空间 2、为什么说row格式的binlog更加安全 3、INSERT/UPDATE/DELETE是生成的row binlog如何直接看懂二进制格式 4、DDL生成的binlog是怎么样[详细]
-
mysqldump导入存储步骤和其注释
所属栏目:[MySql教程] 日期:2022-04-02 热度:162
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-02 热度:59
解压: # 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-02 热度:94
初始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-02 热度:166
审核 什么是业务审核 类似与code review 评审业务Schema和SQL设计 偏重关注性能 是业务优化的主要入口之一 审核提前发现问题,进行优化 上线后通过监控或巡检发现问题,进行优化 Schema设计审核 表和字段命名是否合规 字段类型,长度设计是否适当 表关联关[详细]
-
MySQL 5.7中如何定位DDL被阻塞的难题
所属栏目:[MySql教程] 日期:2022-04-02 热度:198
在MySQL 5.7中,针对MDL,引入了一张新表performance_schema.metadata_locks,该表可对外展示MDL的相关信息,包括其作用对象,类型及持有等待情况。 开启MDL的instrument 但是相关instrument并没有开启(MySQL 8.0是默认开启的),其可通过如下两种方式开[详细]
-
将数据从文本导入至mysql
所属栏目:[MySql教程] 日期:2022-04-02 热度:108
将数据从文本导入到mysql(转)[@more@]access中可以将文本中的数据轻松导入表中,mysql中用起来没那么方便,其实起来也很简单。 首先将数据记录按行处理好用特定的字符分开如:, 记录形如: aaa,bbb,ccc,ddd,eee fff,ggg,hhh,iii,jjj,kkk 就行,建立loaddate[详细]
-
mysql的auto_increment细说
所属栏目:[MySql教程] 日期:2022-04-02 热度:163
MySQL的中AUTO_INCREMENT类型的属性用于为一个表中记录自动生成ID功能,可在一定程度上代替Oracle,PostgreSQL等数据库中的sequence。 在数据库应用,我们经常要用到唯一编号,以标识记录。在MySQL中可通过数据列的AUTO_INCREMENT属性来自动生成。 当插入[详细]
-
半同步与加强半同步复制
所属栏目:[MySql教程] 日期:2022-04-02 热度:178
先要明白事务提交的三个阶段,这里不再赘述。 半同步复制:主上已经提交了,但是日志还没来得及传到备库,这时候宕机了,在半同步看来,主库其他会话看来是透明的,看到的是他提交了的数据,但是如果这时候切换到slave,slave上又没有提交,没有看到这部分[详细]
-
MySQL的权限设定和备份还原
所属栏目:[MySql教程] 日期:2022-04-01 热度:165
MySQL数据库系统的维护工作主要包括用户权限的设置、数据库的备份与恢复,本篇博客将对进行这些操作进行讲解 数据库的用户授权 MySQL数据库的root用户账号拥有对所有库、表的全部权限,频繁使用root账号会给数据库服务器带来一定的风险。在工作中,通常会[详细]
-
如何在MySQL元数据库里查阅索引
所属栏目:[MySql教程] 日期:2022-04-01 热度:187
-- 查看主键约束 SELECT * FROM information_schema.`TABLE_CONSTRAINTS`; -- 查看外键约束 SELECT * FROM information_schema.`REFERENTIAL_CONSTRAINTS`; -- 查看所有列DML权限信息 SELECT * FROM information_schema.`COLUMN_PRIVILEGES`; -- 查看用户[详细]
-
mysql数据库安装途径迁移
所属栏目:[MySql教程] 日期:2022-04-01 热度:166
mysql数据库安装路径迁移之前,先停止业务。 一、停止数据库服务 systemctl stop mysqld 二、查看服务器存储情况 df -h 三、进入数据库默认安装目录 cd /var/lib/mysql 四、查看mysql默认路径下文件大小 du -h --max-depth=1 /var/lib/mysql 五、复制/var/[详细]
-
相关极速赛车源码搭建mysql复合索引
所属栏目:[MySql教程] 日期:2022-04-01 热度:90
复合索引原则:极速赛车源码搭建 最左前缀原则:企 娥:217 1793 408 index(a,b,c) 1、每次查询必须有a,如ab,ac,abc,如果没有a,只有bc查询将失效 2、查询中带or,查询失效 3、查询中带%*,查询失效。 4、where a=* and b and c=* ,c将不走索引 所以还是[详细]
-
MySQL数据库UTF8mb4设定
所属栏目:[MySql教程] 日期:2022-04-01 热度:147
utf-8编码可能2个字节、3个字节、4个字节的字符,但是MySQL的utf8编码只支持3字节的数据,而移动端的表情数据是4个字节的字符。如果直接往采用utf-8编码的数据库中插入表情数据,Java程序中将报SQL异常: utf8mb4编码是utf8编码的超集,兼容utf8,并且能存[详细]
-
什么是统计解析?思维导图来解答!
所属栏目:[MySql教程] 日期:2022-04-01 热度:126
无论是在招聘信息,还是日常的鸡汤干货,想必大家都听过统计分析这个词。那么究竟什么是统计分析呢?具体点的内容包括哪些呢?今天小编就用 思维导图带大家认识这个名词。 那么统计分析又有什么特征呢?统计分析具有三个特征:科学性,直观性,可重复性。[详细]
-
MySQL 5.7.22 rpm 安置方式
所属栏目:[MySql教程] 日期:2022-04-01 热度:77
在MySQL官网下载安装包 [root@hashow-db-master resource]# tar -xvf mysql-5.7.22-1.el7.x86_64.rpm-bundle.tar [root@hashow-db-master resource]# ls DATALOSS_WARNING_README.txt mysql-community-common-5.7.22-1.el7.x86_64.rpm mysql-community-lib[详细]
-
LINUX系统编程 SWAP原理以及和数据库 MYSQL ORACLE联系
所属栏目:[MySql教程] 日期:2022-04-01 热度:122
作为一位DBA长期以来一直受到一些关于SWAP使用的问题,比如如下问题: 1、为了我 free 中buffer/cache明明还有空间为什么SWAP使用了? 2、哪个(些)进程使用了最多的SWAP? 3、如果在ORACLE或者MYSQL避免使用SWAP? 4、为什么要使用直接路径绕过操作系统缓[详细]
-
percona MYSQL 5.7.13 5.7.14 MYSQLDUMP 输入报错delimiter
所属栏目:[MySql教程] 日期:2022-04-01 热度:57
percona 5.7.13 5.7.14 MYSQLDUMP备份完成后不能呢导回去, 文件一大了非常麻烦,最近遇到这样的问题。 [root@testmy client]# /mysqldata/mysql3308/bin/mysql -uroot -plog.sql Enter password: ERROR at line 63: DELIMITER must be followed by a deli[详细]
-
MySQL连接查询流程源码
所属栏目:[MySql教程] 日期:2022-04-01 热度:100
初始化: 点击(此处)折叠或打开 main |-mysqld |-my_init // 初始话线程变量,互斥量 |-load_defaults // 获取配置 |-init_common_variables // 初始化变量 |-init_server_components // 初始化插件 | |-plugin_init | | |-plugin_initialize | |-initializ[详细]
-
MySQL count count 字段 实现上差别
所属栏目:[MySql教程] 日期:2022-04-01 热度:189
水平有限如有误请指出 源码版本:5.7.22 我们继续来讨论一下count(*) count(字段) 实现上的区别。注意我们这里都使用Innodb做为存储引擎,不讨论其他引擎。因为了有了前面的讨论,更容易看出它们的区别,这里我们有如下注意点: 我们需要做到执行计划一样[详细]
-
MySQL 产生大量小relay log的故障一例
所属栏目:[MySql教程] 日期:2022-04-01 热度:84
MySQL 产生大量小relay log的故障一例: 一、案例来源和现象 这个案例是朋友 @peaceful遇到的线上问题,最终线索也是他自己找到的。现象如下: 1、出现了大量很小的relay log如下,堆积量大约2600个: ... -rw-r----- 1 mysql dba 12827 Oct 11 12:28 mysq[详细]
-
mysqldump简单解析
所属栏目:[MySql教程] 日期:2022-04-01 热度:141
MySQL中的mysqldump,真是一个经典而有效的工具,经常用,但是不知道后台运行的过程中到底在干些什么,其实如果想得到这些基本的信息不一定要去看代码,我们通过日志的方式就能一窥其中的奥妙。 如果想看到里面的一些较为细节的日志,开个general log就可[详细]
-
MySQL 5.7安装部署总结
所属栏目:[MySql教程] 日期:2022-04-01 热度:168
之前搭建MySQL环境都是使用公司内部使用的脚本,其实说实话屏蔽了很多细节,对MySQL的安装还是了解比较肤浅,今天有个MySQL 5.7的数据迁移的任务,也是为了熟悉安装过程就走了一遍安装的流程,整体和5.6差别不大,这里演示安装的都是Percona发布的二进制版[详细]
-
try restarting transaction参数控制
所属栏目:[MySql教程] 日期:2022-04-01 热度:92
Lock wait timeout exceeded; try restarting transaction 锁等待超时。。回滚事务。。 当事务1 获得锁 start TRANSACTION update user set username=gh4g where id=2;#获得锁 此时 事务2 开始事务 start TRANSACTION update user set username=m3mm where[详细]