mysql
文章平均质量分 67
codingtu
人活着是为了体验你从未体验过的美好。
coding的意义在于使用那些没有使用过的技术。
展开
-
正确理解Spring事务和数据库事务和锁
Lock wait timeout exceeded; try restarting transaction解决方案原创 2017-09-20 21:59:02 · 51364 阅读 · 3 评论 -
mysql 建表设计建议
这里的建表建议是在MySQL数据库的innodb存储引擎下使用。1、一定要设置主键,且主键尽量用自增ID去实现。对于innodb,并没有强制我们使用主键,但是其实innodb内部的实现是必定含有主键的,因为我们的数据是存放在主键索引的B+树上的。对于没有建立主键的表,innodb会默认生成一个主键,但是这个主键我们是不可见的。而使用主键我们尽量用int或者bigint类型为主键,并且设置为自增。这...原创 2017-12-09 09:07:58 · 3202 阅读 · 1 评论 -
mysqldump原理分析
测试库:mysqldump_test命令:mysqldump -u root -p mysqldump_test > /User/admin/Desktop/mysqldump_test.sql准备工作:1、创建一个mysqldump_test的数据库 CREATE DATABASE `mysqldump_test` /*!40100 DEFAULT CHAR原创 2017-12-10 10:30:33 · 436 阅读 · 0 评论 -
Mysql explain-type使用详解
下面是测试用例,楼主的测试使用的MySQL版本是5.6.27-log。show create table user_man;CREATE TABLE `user_man` ( `manid` bigint(20) NOT NULL AUTO_INCREMENT, `manname` varchar(32) DEFAULT NULL, `manage` int(6) DEFAULT NULL...原创 2018-03-13 11:26:30 · 1450 阅读 · 0 评论 -
Mysql explain-Extra(using where,using index)使用详解
下面是测试用例,楼主的测试使用的MySQL版本是5.6.27-log。show create table user_man;CREATE TABLE `user_man` ( `manid` bigint(20) NOT NULL AUTO_INCREMENT, `manname` varchar(32) DEFAULT NULL, `manage` int(6) DEFAULT NULL...原创 2018-03-13 11:27:48 · 7231 阅读 · 0 评论 -
MySQL基本原理和使用技巧
本文是我在大半年前在前公司做团队分享时的一个文档,写得比较挫,当时分享讲了2个小时,自己感觉讲得还可以。最近前同事跑来问我还有没有文档保存,翻了旧电脑和硬盘才找出来,于是就想着分享一下。一、MySQL整体结构服务器层(负责客户端连接、授权认证、安全、线程管理等)核心层(缓存查询、解析器、查询优化器、函数)(存储过程,触发器,视图)存储引擎层(MyISAM、InnoDB、Mem...原创 2018-11-13 23:51:37 · 3550 阅读 · 0 评论 -
别踩坑!使用MySQL唯一索引请注意
背景在程序设计中了,我们往往需要确保数据的唯一性,比如在常见的注册模块,我们需要确保一个手机号只能注册为一个账号。这种情况下,我们的程序往往是第一道关卡,用户来注册之前,首先判断这个手机号是否已经注册,如果已经注册则返回错误信息。但是我们不能确保同时有两个人使用同一个手机号注册到我们的系统中,因此这里就需要在更深的层次去确保手机号的唯一性了。不同存储方案,解决方式不一样,这里以MySQL为例,我...原创 2019-01-28 21:33:14 · 29674 阅读 · 8 评论