数据库技术
文章平均质量分 86
BLUcoding
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
ORACLE、MYSQL、达梦 SQL 语法兼容性分析
ORACLE、MYSQL、达梦均支持 CASE WHEN,但 MYSQL 不支持 DECODE 函数。原创 2025-09-24 10:00:33 · 1086 阅读 · 0 评论 -
mysql手册17_经验总结
1、如何定位慢查询3、如何使用 EXPLAIN 优化查询4、什么是聚簇索引和二级索引(非聚簇索引)5、超大分页处理聚簇索引:索引的叶子节点直接包含数据行,聚簇索引有且仅有一个。如果存在主键,主键索引就是聚簇索引。如果不存在主键,将使用第一个唯一索引作为聚簇索引。如果既没有主键索引也没有唯一索引,InnoDB会自动生成一个rowid作为隐藏的聚簇索引。二级索引:索引的叶子节点关联对应的主键,所以一般需要回表操作,二级索引可以存在多个。原创 2024-09-25 17:33:05 · 647 阅读 · 0 评论 -
mysql手册16_主从复制
mysql手册16_主从复制复制 是指将主数据库中的DDL和DML操作通过二进制日志传到从库服务器中重新执行,以保持从库与主库数据的同步过程:1. Master 主库在事务提交时,会把数据变更作为时间 Events 记录在二进制日志文件 Binlog 中2. 主库推送二进制日志文件 Binlog 中的日志事件到从库中的中继日志 Relay Log3. slave 重做中继日志中的事件,将改变反映它自己的数据优势:当主库出现问题,可快速切换到从库提供服务可以在从库上执行查询,在主库上执行更原创 2020-09-04 18:43:55 · 109836 阅读 · 0 评论 -
mysql手册15_日志
mysql手册15_日志错误日志:查看错误日志存放位置:show variables like 'log_error%';+----------------------------+----------------------------------------+| Variable_name | Value |+----------------------------+----------------原创 2020-09-03 20:18:22 · 105064 阅读 · 0 评论 -
mysql手册14_常用工具
工具1:mysql连接本地mysql:mysql -u root -p连接远程mysql:mysql -h 118.31.106.51 -P 3306 -u root -p连接远程mysql:mysql -h118.31.106.51 -P3306 -uroot -p123456不需要进入MySQL的命令行就SQL语句(用于批处理,shell脚本):mysql -uroot -p105217 blublog -e "select * from t_comment";工具2:mysq原创 2020-09-01 14:02:57 · 120210 阅读 · 0 评论 -
mysql手册13_常用的SQL技巧
mysql手册13_常用的SQL技巧1. SQL执行顺序1.1 编写顺序1.2 执行顺序1.3 使用正则表达式查询2. MySQL的常用函数2.1 数字函数2.2 字符串函数2.3 日期函数2.4 聚合函数1. SQL执行顺序1.1 编写顺序SELECT DISTINCT <select list>FROM <left_table> <join_type>JOIN <right_table> ON <join_condition>原创 2020-08-29 21:41:25 · 109836 阅读 · 0 评论 -
mysql手册12_锁机制
mysql手册12_锁机制锁是协调多个线程并发访问某一资源的机制(避免资源的争抢)锁的分类以对数据库的操作粒度划分:表锁(操作时锁定整个表)、行锁(锁定当前行)以对数据库的操作类型划分:读锁(共享锁)、写锁(排他锁)共享锁:多个事务可并发读取数据,但任何事务都不可获取数据的排它锁(写),除非已释放所有共享锁排它锁:某个事务获得了排它锁,其他事务不能读取也不能修改各存储引擎对锁的支持情况:存储引擎表级锁行级锁页面锁MyISAM支持不支持不支持Inno原创 2020-08-28 21:18:11 · 98929 阅读 · 0 评论 -
mysql手册11_查询缓存优化和内存管理优化、并发参数调整
mysql手册11_查询缓存优化当开启查询缓存,执行了相同sql查询操作时,服务器会直接从查询缓存中读取结果,当数据被修改后,缓存失效修改频繁的表不适合设置查询缓存。查询缓存参数的配置:注:Mysql8.0已经不再支持查询缓存功能查看当前数据库是否支持查询缓存:show variables like "have_query_cache";+------------------+-------+| Variable_name | Value |+------------------+原创 2020-08-19 15:51:42 · 106919 阅读 · 0 评论 -
mysql手册10_SQL优化
mysql手册10_SQL优化1. 大批量插入数据的优化:按照主键顺序插入关闭唯一性校验导入数据前执行SET UNIQUE_CHECKS=0,关闭唯一性校验导入结束后执行SET UNIQUE_CHECKS=1,恢复唯一性校验手动提交事务导入数据前执行SET AUTOCOMMIT=0,关闭自动提交导入结束后执行SET AUTOCOMMIT=1,开启自动提交 2. insert语句的优化:整合多个insert语句,减少连接次数:原始方案:insert into tes原创 2020-08-19 15:04:41 · 109218 阅读 · 0 评论 -
mysql手册09_索引的使用
mysql手册09_索引的使用索引是数据库优化最重要最常用的手段之一建立测试表testdatacreate table testdata( id int primary key, name varchar(20), address varchar(10))利用存储过程插入300000条测试数据(耗时极长!):delimiter $create procedure add_data()begin declare num int default 1; while num <原创 2020-08-17 16:24:58 · 65777 阅读 · 0 评论 -
mysql手册08_优化SQL的准备工具
mysql手册08_优化SQL前提准备查看SQL语句的执行频率:查询当前连接的SQL执行频率:show status like 'Com_______';+---------------+-------+| Variable_name | Value |+---------------+-------+| Com_binlog | 0 || Com_commit | 0 || Com_delete | 1 || Com_import原创 2020-08-15 20:33:37 · 65702 阅读 · 0 评论 -
mysql手册07_存储引擎
mysql手册07_存储引擎存储引擎其实就是对于数据库文件的一种存取机制,实现存储数据,建立索引,以及更新和查询数据等技术的方式。存储引擎是建立在 数据表 层面上的,同一数据库的不同表可以建立不同的存储引擎。查看支持的存储引擎:show engines;+--------------------+---------+----------------------------------------------------------------+--------------+------+---原创 2020-08-15 17:30:45 · 65517 阅读 · 0 评论 -
mysql手册06_触发器
mysql手册06_触发器触发器指在数据库 增删改前后 触发并执行的一段 SQL语句集合触发器可以确保 数据完整性,进行 日志记录 和 数据校验触发器使用 NEW 和 OLD 来引用触发器中发生变化的记录内容MySQL 只支持 行级触发器 ,不支持语句级触发器触发器类型NEW和OLD的用法insert型触发器NEW表示将要或已经新增的数据update型触发器NEW表示将要或已经修改的数据,OLD表示修改之前的数据delete型触发器OLD表示将要或已经删除的原创 2020-08-15 15:33:31 · 70282 阅读 · 0 评论 -
mysql手册05_存储过程和存储函数
mysql手册05_存储过程和存储函数存储过程和存储函数是存储在数据库中的一段SQL语句集合。通过调用存储过程或存储函数,可以简化开发,减少数据在数据库和服务器间的传输。存储过程和存储函数的区别是:存储过程没有返回值。基本语句:注:在创建存储过程时,为了避免冲突,需要临时修改语句结束符号:delimiter $创建存储过程:delimiter $create procedure pro_test1() begin select 'Hello MySQL'; end$deli原创 2020-08-14 21:34:41 · 65640 阅读 · 0 评论 -
mysql手册04_视图
mysql手册04_视图视图是一种虚拟的表,封装了一条select查询语句。创建视图:create view view_city_country as select c.*,t.country_name from city c, country t where c.country_id = t.country_id;查看表和视图:show tables;查看表和视图内容:select * from view_city_country通过更新视图修改表数据:update view原创 2020-08-14 20:03:01 · 62655 阅读 · 0 评论 -
mysql手册03_索引
mysql手册03_索引索引是帮助MySQL进行高效率数据查询的数据结构索引的优势和劣势:优势:提高数据检索和排序的效率劣势:索引占用空间,更新表时,MySQL不仅要更新数据,还要更新索引信息。BTREE结构:以5叉BTree树为例,每层节点超出4个时,中间节点将分裂为父节点。插入数据:C N G A H E K Q M F W L T Z D P R X Y S插入前4个字母:ACGN插入H,G向上分裂: GAC HN插入E K Q,不需分裂: GACE HK原创 2020-08-14 19:45:14 · 62857 阅读 · 0 评论 -
mysql手册02_事务
mysql手册02_事务mysql中,事务是一个最小的不可分割的工作单元,事务能够保持一个业务的完整性。比如银行转账:update user set money=money-100 where name='a';update user set money=money+100 where name='b';必须保证以上sql语句同时成功或同时失败。mysql的自动提交是默认打开的,此时sql语句的执行不能回滚(rollback)mysql> select @@autocommit;+原创 2020-08-12 14:35:48 · 68556 阅读 · 1 评论 -
mysql手册01_常用SQL语句大全
mysql笔记//查询所有数据库show databases;//选中某一个数据库use blublog;//查询select * from t_blog;select * from t_blog where id = 40;select id,title from t_blog;select * from t_blog where content like '%数据库%';注 '3%'表示以3开头,'%3'表示以3结尾。select * from student where原创 2020-08-10 16:49:11 · 66420 阅读 · 0 评论
分享