记录真实开发问题、项目实践和两三句就能说明白的技术点
根据某一条件从数据库表中查询 『有』与『没有』,只有两种状态,那为什么在写SQL的时候,还要SELECT count(*) 呢?无论是刚入道的程序员新星,还是精湛沙场多年的程序员老白,都是一如既往的count SQL查找是否"存在" 目前多…
今天建了一个表,里面有一个列是timestamp类型,我本意是在数据更新时,这个字段的时间能自动更新。岂知对这个类型的值还不甚了解,导致出错。发现这个字段只是在这行数据建立的时候有值,在更新的却无变化。 查找资料,发现是我建表的语句有问题:…
MySQL 锁机制详解:MyISAM 表锁(共享读锁/独占写锁、concurrent_insert 并发插入、写优先锁调度)与 InnoDB 行锁(共享锁S/排他锁X/意向锁、行锁通过索引实现、间隙锁 Next-Key、事务隔离级别与 MVCC、死锁与锁监控)。
查看事物的隔离级别 SELECT @@tx_isolation mysql> show variables like '%isolation%'; +---------------+-----------------+ | Variable…
select concat('alter table ', table_name, ' modify ', column_name, ' bigint') from information_schema.columns where tabl…
接口报 Duplicate entry 4294967295 for key PRIMARY 的原因:product_id 为自增 int 已到上限,ERP 推送超大 id 溢出。附批量将 product_id 改为 bigint 的 SQL。
MySQL 存储过程与存储函数:CREATE PROCEDURE / CREATE FUNCTION 语法、DELIMITER 改分隔符、IN/OUT/INOUT 参数、流程控制(IF/WHILE/LOOP)与调用方式。
MySQL 数据库优化实操:硬件选型(磁盘IO/CPU/内存,推荐 RAID1+0、SSD)、编译安装(--without-debug --all-static)、my.cnf 关键参数详解(max_connections/table_cache/query_cache/i...
MySQL 存储过程事务管理:ACID 与隔离级别(READ UNCOMMITTED/COMMITTED/REPEATABLE READ/SERIALIZABLE)、START TRANSACTION/COMMIT/ROLLBACK/SAVEPOINT、FOR UPDATE...
PHP 操作 MySQL 事务两种方式:SET autocommit=0 关闭自动提交后 commit/rollback(结束后需恢复 autocommit=1);或 START TRANSACTION 显式开启(结束自动恢复)。
MySQL 主从服务器配置实现读写分离:Master 开启 binlog+授权复制账号、Slave 用 CHANGE MASTER 指向主库并 START SLAVE,以及应用层/中间件(ProxySQL/MyCat)做读写分离与复制延迟优化。
MySQL 只允许某个 IP 访问数据库:用 GRANT 指定来源主机(如 'user'@'192.168.1.100')授权,并配合 bind-address / 防火墙限制远程连接。
MYSQL支持三个引擎:ISAM、MYISAM和HEAP。另外两种类型INNODB和BERKLEY(BDB),也常常可以使用。如果技术高超,还可以使用MySQL++ API自己做一个引擎。这里介绍几种数据库引擎
MySQL InnoDB 磁盘性能讨论(频繁更新导致 BTREE 索引磁头频繁移动、缺乏 tablespace),并附 MySQL 主从同步(master/slave 配置 + SHOW SLAVE STATUS)与关键性能参数调优(key_buffer_size/inno...
InnoDB 与 MyISAM 的区别对比:事务与外键支持、行锁/表锁、count(*) 行数统计、FULLTEXT 索引、AUTO_INCREMENT 处理、构成文件(.frm/.MYD/.MYI vs 表空间)、读写性能与选型建议。