首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Mysql数据库」MySQL数据库开发的 36 军规

核心军规 尽量不在数据库做运算 控制单表数据量 纯INT不超过10M,含Char不超过5M 保持表身段苗条 平衡范式和冗余 拒绝大SQL,复杂事务,大批量任务 字段类军规 用好数值字段,尽量简化字段位数...把字符转化为数字 优先使用Enum或Set 避免使用Null字段 少用并拆封Text/Blob 不在数据库中存图片 索引类军规 谨慎合理添加索引 字符字段必须建立前缀索引?...UTF8MB4 for by 可能还有人不知道,MySQL 数据库的字符集,要用 utf8mb4,而不是utf8。...因为MySQL的utf8不是真正的UTF-8,只支持最多三个字节的字符。真正的UTF-8可能会出现四个字节的字符。...MySQL 从来没有修复这个 Bug,而是使用另外的解决方法:真正的UTF-8字符集用 utf8mb4的名字提供。

5.3K20
您找到你想要的搜索结果了吗?
是的
没有找到

Python3 操作 MySQL 插入一数据返回主键 id的实例

Python 中貌似并没有直接返回插入数据 id 的操作(反正我是没找到),但是我们可以变通一下,找到最新插入的数据 #!...,其中一个进程执行完成一语句时,此时只有这个进程能看到数据。...中并没有所谓的真正多线程,建议使用多进程 补充拓展:mysql中插入一数据后得到插入后的主键id值 ** 当我们涉及多表进行插入操作是,常常需要在程序中等到刚刚插入数据的主键Id, 便与进行多表关联...java.lang.Long" order="AFTER" keyProperty="id" SELECT LAST_INSERT_ID() AS id </selectKey 以上这篇Python3 操作 MySQL...插入一数据返回主键 id的实例就是小编分享给大家的全部内容了,希望能给大家一个参考。

2.8K10

wordpress导入数据错误MySQL返回:#1273 – Unknown collation

导入wordpress网站数据时出现上述错误 大致意思是“没有定义的编码集utf8mb4”。...而utf8mb4只有在mysql数据库版本是5.5.3+的时候才支持,网站原mysql的版本是5.6,导入的mysql版本是5.0,因此出现#1273错误。...就是 人家编码升级了 自己数据库文件没有升级啊 所以手动更改一下编码 utf8mb4_unicode_520_ci 解决方法: 方法一:替换编码 使用代码编辑器(记事本,Editplus等都可以)打开导出的...sql数据文件; utf8mb4_unicode_520_ci(有的是utf8mb4_unicode_ci, 自己看自己属于哪个) 替换为: utf8_general_ci 然后再将 utf8mb4 替换为...utf8 方法二:把网站要用的mysql数据库升级到5.5.3以上版本。

1.3K30

如何用 ajax 连接mysql数据库,并且获取从中返回数据。ajax获取从mysql返回数据。responseXML分别输出不同数据的方法。

使用它,就可以无闪刷新页面,并且从数据库获取实时改变的数据反馈回界面,显示出来!是不是很爽,的确。       废话不多,开讲,请注意我的代码的注释,里面详说!...,开始和服务器端进行交互 47 //同步方式下,send语句会在服务器端返回数据后才执行 48 //异步方式下,send语句会立即执行 49 xmlHttp.send...76 //判断http的交互是否成功 77 if(xmlHttp.status==200) 78 { 79 //获取服务器端返回数据...80 var xmlDoc = xmlHttp.responseXML; 81 //这里把返回数据以XML的格式存到变量中。...82 //还有一种返回式以字符串的形式返回,responseText,这个可以用下标法逐个输出,但是注意,逐个输出的是字符, 83 //也就是说,你想要的一个字符串会被拆成几份

7.7K81

MySQL数据库开发的 36 军规!

来自:www.slideshare.net/mysqlops/mysql-9838563 来自一线的实战经验,主要针对DBA和后端开发人员,总是在灾难发生后,才想起容灾的重要性;总是在吃过亏后,才记得曾经有人提醒过...核心军规 尽量不在数据库做运算 控制单表数据量 纯INT不超过10M,含Char不超过5M 保持表身段苗条 平衡范式和冗余 拒绝大SQL,复杂事务,大批量任务 字段类军规 用好数值字段,尽量简化字段位数...把字符转化为数字 优先使用Enum或Set 避免使用Null字段 少用并拆封Text/Blob 不在数据库中存图片 索引类军规 谨慎合理添加索引 字符字段必须建立前缀索引?...Load Data导入数据,比Insert快20倍 打散大批量更新,尽量凌晨操作 约定类军规 隔离线上线下 禁止未经DBA认证的子查询 永远不在程序段显式加锁 表字符集统一使用UTF8MB4 往期干货推荐...Spring Boot 集成 Mybatis 实现双数据源 5. Java 中的伪共享详解及解决方案

2.2K50

MySQL数据库开发的 36 军规

MySQL数据库开发的 36 军规 标签:数据库 核心军规(5个) 尽量不在数据库做运算。 控制单表数量:行不超过500W,超出分表;列不超过50个,超过拆表。...NULL(NULL字段很难查询优化、NULL字段的索引需要额外空间、NULL字段的复合索引无效) 尽量少用text/blob类型(尽量使用varchar代替text字段),需要的时候请拆表 不在数据库存图片...pinyin`(8)), 不在列上做运算 Innodb主键推荐使用自增列(主键建立聚簇索引,主键不应该被修改,字符串不应该做主键) 不用外键(由程序保证约束) SQL类军规(16个) SQL语句尽可能简单(一SQL...只能在一个cpu运算,大语句拆小语句,减少锁时间,一大SQL可以堵死整个库) 简单的事务(事务时间尽可能短,坏的代码案例:上传图片事务) 避免使用trigger/func(触发器、函数不用,由客户端程序取而代之...:group by name order by null 提高查询效率 请使用同类型比较(避免转换导致索引丢失) 使用 LOAD DATA 导入命令比 insert 速度快20倍左右(适合导入大量测试数据

12510

【MyBatis框架点滴】——mybatis插入数据返回主键(mysql、oracle)

("com.danny.mybatis.insertUser", user); session.commit(); return user.getUserId();//返回插入数据库后得到的用户...id }   这里总结一下mybatis插入数据返回主键的4种情况:mysql环境下主键自增、mysql环境下主键为uuid、mysql环境下主键自增、mysql环境下主键为uuid。   ...数据库为mysql ---- 主键为自增时(主键为数值类型且自增)   利用mysql的LAST_INSERT_ID()方法获取插入记录的主键,select LAST_INSERT_ID()可以在插入数据后...,查询并返回刚插入数据的主键(但是单独执行这条语句只会返回0)。...主键为UUID时(主键必须为字符类型)   使用mysql的方法UUID()方法获取随机的UUID作为主键,select UUID()可以在插入数据前,生成随机的UUID并通过keyProperty赋值给将要插入记录的主键

1.9K20

Mysql插入2.6亿垃圾数据后会发生什么?

与技术&业务沟通后,知晓该表数据可以自动重建。...root用户打算直接删除该表,但是失败 Table is locked by the server 发现 innodb_force_recovery,但是不敢乱用 发现rollback速度为每秒约1W,...2.6亿数据。...简要描述情况,CTO初步检测后,给出A/B方案: A:先等待正常回滚 B:如果无法回滚完,考虑停止Mysql. 使用备份数据启用备库 最终结果 由于时间还来得及,采用了A方案,等待DB自然回滚。...在此期间,其他同事找到了相应的程序BUG,一个存储过程中的死循环自昨晚23点开始疯狂往表中插入数据。 由于这张表目前达到73G,因此删除再重建了此表,利用程序进行数据恢复。

53710

1亿数据批量插入 MySQL,哪种方式最快?

、无事务) 3 总结 4 补充 ---- 利用JAVA向Mysql插入一亿数量级数据—效率测评 这几天研究mysql优化中查询效率时,发现测试的数据太少(10万级别),利用 EXPLAIN 比较不同的...1、先上Mysql数据库,随机生成的人员数据图。分别是ID、姓名、性别、年龄、Email、电话、住址。...最后得到52W数据,大约耗时两首歌的时间(7~9分钟)。随后,利用mybatis向mysql插入10000数据。...因为在未开启事务时,更新10000数据,就得访问数据库10000次。导致每次操作都需要操作一次数据库。...结论:设计到大量单条数据的插入,使用JDBC批处理和事务混合速度最快 实测使用批处理+事务混合插入1亿数据耗时:174756毫秒 4 补充 JDBC批处理事务,开启和关闭事务,测评插入20次,一次50W

3.6K30

SpringMVC返回数据到视图

通过ModelAndView对象返回数据到视图 在SpringMVC中有一个ModelAndView对象,如其名,Model代表模型,View代表视图,这个名字就很好地解释了该类的作用——它用来存储模型数据以及显示该数据的视图名称...在控制器中调用完模型层处理完用户的请求后,我们可以把结果数据存储在该对象的model属性中,把要返回的视图信息存储在该对象的view属性中,然后让把ModelAndView对象返回给SpringMVC框架...例如,如果当我们只需要返回一个模型数据时,可以使用以下这个构造器: public class ModelAndView { ......除了以上介绍的ModelAndView可以返回数据到视图之外,SpringMVC中的Model也可以返回数据到视图。...---- 通过Map返回数据到视图 使用Map返回数据与使用Model类似,也是只需要在方法上声明Map参数,然后添加数据即可。

95010
领券