mysql
limngyang
就是做做笔记。。
展开
-
普通索引和唯一索引性能对比
change buffer:当需要更新一个数据页时,如果数据页在内存中就直接更新,而如果这个数据页还没有在内存中的话,在不影响数据一致性的前提下,InnoDB会将这些更新操作缓存在 change buffer 中,在下次查询需要访问这个数据页时(系统也会定期 merge ),将数据读入内存,然后执行 change buffer 中与这个数据页有关的操作(更新相关数据) ,这个过程称为 merge 。普通索引 和 唯一索引 性能对比: 读取性能: 普通索引读取流程:查到目标值,一直查到下一.原创 2021-05-31 15:56:44 · 560 阅读 · 0 评论 -
MySQL事务嵌套
最近因为工作中遇到了这个问题,对于mysql事务回滚机制,主要记录两种特殊情况。 场景1:第一层commit 第二层rollback <?phpfunction insert23(){ Db::startTrans(); $res1 = Db::name('test_table')->insert(['name'=>'张三','age'=>23]); $this->insert24(); Db::commit();}f..原创 2020-12-21 17:57:12 · 357 阅读 · 0 评论 -
MySQL存储引擎InnoDB和MyISAM对比
事务支持: InnoDB支持事务,外键等高级数据库功能。具有事务、回滚和崩溃修复能力的事务安全型表。 MyISAM不支持事务,强调的是性能,每次查询具有原子性,其执行行数度比InnoDB类型更快。 存储结构: 每个MyISAM在磁盘上存储成三个文件。文件名为所属表名,扩展名为.frm文件存储表定义。数据文件的扩展名为.MYD(MYData)。索引文件的扩展名是.MYI(MYIndex)。 所有的表都保存在一个数据文件中(也可能是多个文件),InnoDB表的大小受限于操作系统同文件的大小,一原创 2020-07-07 11:33:18 · 147 阅读 · 0 评论 -
MySQL的三种连接方式对比
PHP连接MySQL的三种方式: PHP的MySQL扩展:面向过程的扩展,早期PHP连接MySQL的接口,主要针对MySQL4.1.3或更早版本,如今已被MySQLi取代; //设置数据库参数define('DB_USER','root');define('DB_PASSWORD','123456');define('DB_HOST','localhost');define('DB_NAME','testdb');//初始化数据库if(!conn = @mysqli_c..原创 2020-07-07 10:36:11 · 389 阅读 · 0 评论 -
mysql:mac系统mysql datetime类型无法插入'0000-00-00 00:00:00'
插入数据时报错: Invalid default value for ‘create_time’解决方案:打开命令列界面,然后输入一下命令查看sql_modeselect @@sql_mode结果:'ONLY_FULL_GROUP_BY,NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERRO...原创 2018-12-25 16:14:50 · 1290 阅读 · 1 评论