
数据库
文章平均质量分 73
bozi_list
这个作者很懒,什么都没留下…
展开
-
B-tree/b+tree 原理以及聚簇索引和非聚簇索引
B-Tree介绍B-Tree是一种多路搜索树(并不是二叉的): 1.定义任意非叶子结点最多只有M个儿子;且M>2; 2.根结点的儿子数为[2, M]; 3.除根结点以外的非叶子结点的儿子数为[M/2, M]; 4.每个结点存放至少M/2-1(取上整)和至多M-1个关键字;(至少2个关键字) 5.非叶子结点的关键字个数=指向儿子的指针个数-1; 6.非叶子结点的关键字:K[1], K[2], …, K[M-1];且K...转载 2021-10-29 17:27:09 · 1943 阅读 · 0 评论 -
最全 MySQL 优化方法
说起MySQL的查询优化,相信大家收藏了一堆奇技淫巧:不能使用SELECT *、不使用NULL字段、合理创建索引、为字段选择合适的数据类型..... 你是否真的理解这些优化技巧?是否理解其背后的工作原理?在实际场景下性能真有提升吗?我想未必。因而理解这些优化建议背后的原理就尤为重要,希望本文能让你重新审视这些优化建议,并在实际业务场景下合理的运用。MySQL逻辑架构如果能在头脑中构建一幅MySQL各组件之间如何协同工作的架构图,有助于深入理解MySQL服务器。下图展示了MySQL的逻辑架构图。原创 2021-10-29 16:03:34 · 350 阅读 · 0 评论 -
【mysql】count(*),count(1)与count(column)区别
count(*)对行的数目进行计算,包含NULLcount(column)对特定的列的值具有的行数进行计算,不包含NULL值。count(1)这个用法和count(*)的结果是一样的。 count(1) 与 count(*) 比较 :1> 如果数据表没有主键,那么 count(1) 比 count(*) 快2> 如果有主键的话,那主键 (联合主键) 作为 count...原创 2018-12-05 13:23:12 · 229 阅读 · 0 评论 -
MySQL中的IFNULL和IF和ISNULL函数
IFNULL(expr1,expr2):如果第一个参数不为空,则返回第一个参数,否则返回第二个参数。ISNULL(expr):判断是否是空,是空则返回1,否则返回0。IF(expr1,expr2,expr3):如果第一个表达式的值为TRUE(不为0或null),则返回第二个参数的值,否则返回第三个参数的值。 ...原创 2018-12-05 11:42:41 · 1454 阅读 · 0 评论 -
数据库排名 Relational DBMS | Graph DBMS | RDF stores Ranking
参照DB-Engines Ranking排名,下面是All DB Ranking:关于Relational DBMS Ranking:关于RDF stores数据库排名:关于Graph DBMS Ranking:参照:https://db-engines.com/en/ranking--------------------- 作者:Java-Basketball ...转载 2018-10-16 10:17:16 · 686 阅读 · 0 评论 -
mysql中exists注意点
执行sql:select 1 from dual where exists (select 0);select 1 from dual where exists (select null);执行结果都是1;mysql> create table t3(id int,t datetime);Query OK, 0 rows affected (0.44 sec)mysql> ...原创 2018-07-10 21:31:58 · 1470 阅读 · 0 评论 -
Mysql插入语句之value与values区别
value与values区别http://dev.mysql.com/doc/refman/5.7/en/insert.html看了一下官方文档,VALUE与VALUES都是正确的,经过验证,这两个也是可以混合着用的,只是两者对不同语句插入数量的执行效率各不相同。VALUE插入一行VALUES插入一行可以看出在插入单行时,使用VALUES比较快VALUE插入多行VALUES插入多行对比之下,插入多...转载 2018-06-09 19:38:43 · 23322 阅读 · 5 评论 -
mysql dump binlog master状态
遇到个dump binlog延迟增加的问题,发现master上的dump线程状态多数时间是 [plain] view plain copyFinished reading one binlog; switching to next binlog [plain] view plain copy原创 2018-02-04 11:35:34 · 3307 阅读 · 0 评论 -
MySQL5.6 主从复制 ERROR 1776 (HY000): Parameters MASTER_LOG_FILE
主从都开启了gtid,在设置从库的时候遇到了问题mysql> CHANGE MASTER TO MASTER_HOST=‘xxx’,MASTER_USER='replicant',MASTER_PASSWORD=‘xxx’, MASTER_LOG_FILE='bin.000050', MASTER_LOG_POS=191;ERROR 1776 (HY000): Parameters ...原创 2018-01-03 10:36:52 · 649 阅读 · 0 评论 -
使用RDS for localMysql 配置主从同步
登录主实例查询主实例的 server-id。# show variables like '%server_id%';系统返回如下信息:+-------------------------+-----------------+| Variable_name | Value |+-------------------------原创 2017-09-06 13:28:26 · 449 阅读 · 0 评论 -
阿里云服务器CentOS下安装mysql
安装MySQL主要有两种方法:一种是通过源码自行编译安装,这种适合高级用户定制MySQL的特性,这里不做说明;另一种是通过编译过的二进制文件进行安装。二进制文件安装的方法又分为两种:一种是不针对特定平台的通用安装方法,使用的二进制文件是后缀为.tar.gz的压缩文件;第二种是使用RPM或其他包进行安装,这种安装进程会自动完成系统的相关配置,所以比较方便。本文介绍的是第二种方法使用RPM安装。原创 2016-08-30 08:45:15 · 2988 阅读 · 1 评论 -
MySQL中interactive_timeout和wait_timeout的区别
在用mysql客户端对数据库进行操作时,打开终端窗口,如果一段时间没有操作,再次操作时,常常会报如下错误:?123ERROR 2013 (HY000): Lost connectionto MySQL server during queryERROR 2006 (HY000): MySQL原创 2017-12-29 14:41:31 · 235 阅读 · 0 评论 -
Mysql Too Many Connections问题解决
MySQL的max_connections参数用来设置最大连接(用户)数。每个连接MySQL的用户均算作一个连接,max_connections的默认值为100。本文将讲解此参数的详细作用与性能影响。与max_connections有关的特性MySQL无论如何都会保留一个用于管理员(SUPER)登陆的连接,用于管理员连接数据库进行维护操作,即使当前连接数已经达到了max_conne原创 2017-12-28 15:17:30 · 226 阅读 · 0 评论 -
mysql format函数对数字类型转化的坑
format()函数返回类型是字符串,满三位会加一个逗号针对数字类型转换建议使用 convert或者cast函数,用法如下:format(param, 2) --> convert(param, decimal(12,2)) cast(param as decimal(12,2))原创 2017-11-28 21:06:02 · 11494 阅读 · 0 评论 -
MySql支持Emoji表情存储
utf8mb4和utf8的区别如下:utf8一个字符最多3字节,而utf8mb4则扩展到一个字符最多能有4字节,所以能支持更多的字符集。MySQL 需要支持 emoji 表情符号版本需要大于5.5.3,且字符集需要设置为utf8mb4 字符集。1、设置数据表结构字符集ALTER TABLE p_wechat_user CONVERT TO CHARACT原创 2017-12-08 22:36:58 · 299 阅读 · 0 评论 -
恢复云数据库MySQL的备份文件到自建数据库
云数据库MySQL版使用开源软件Percona Xtrabackup对数据库进行备份,所以您可以使用该软件将云数据库MySQL的备份文件恢复到自建数据库中,本文将介绍详细的操作步骤。关于云数据库MySQL版如何备份数据,请参见备份RDS数据。前提条件本地MySQL数据库安装在64位的Linux系统中,且与云数据库MySQL版的版本相同。说明:由于软件限制转载 2017-12-28 09:49:37 · 307 阅读 · 0 评论 -
在mysql数据库中日期与long型的转化
1、在mysql 数据库中,“2009-09-15 00:00:00”转化为列为长整型的函数:[java] view plain copyselect unix_timstamp("2009-09-15 00:00:00")*1000, 这里要注意,mysql数据库中的长整型,比java中的长整型少了秒后面的毫秒数,所以要乘原创 2018-01-02 17:54:49 · 3492 阅读 · 0 评论