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

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

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

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

MySQL 数据库规范--开发

目录 ---- 1.sql语句编写2.explain 工具的使用--重点 1.sql语句编写 ---- SQL编写 1.执行大的delete、update、insert操作要慎重,特别是对业务繁忙的系统...9.避免使用存储过程、触发器、函数等,这些特性会将业务逻辑与数据库耦合在一起,并且MySQL的存储过程,触发器,函数中可能存在bug。 10.尽量避免使用子查询,连接。...11.使用合理的sql语句以减少与数据库的交互次数。 12.建议使用合理的分页技术以提高操作效率。...type =ALL Full Table Scan 全表查询 key =NULL 未使用索引 rows = 7 10数据库中所有记录 extra = Using where ,最终使用where 做结果集过滤...当然上述演示比较简单,也不是非常具备实战色彩,对于explain的使用,我们还应在更多的数据库操作场景中多多使用,这是sql调优的利器。

1.5K20

【干货】MySQL数据库开发规范

所有的数据库对象名称必须使用小写字母并用下划线分割(MySQL大小写敏感,名称要见名知意,最好不超过32字符) 所有的数据库对象名称禁止使用MySQL保留关键字(如 desc、range、match...,从一开始就进行数据字典的维护 尽量控制单表数据量的大小在500w以内,超过500w可以使用历史数据归档,分库分表来实现(500万行并不是MySQL数据库的限制。...MySQL没有对存储有限制,取决于存储设置和文件系统) 谨慎使用mysql分区表(分区表在物理上表现为多个文件,在逻辑上表现为一个表) 谨慎选择分区键,跨分区查询效率可能更低 建议使用物理分表的方式管理大数据...禁止从开发环境,测试环境直接连生产环境数据库 限制每张表上的索引数量,建议单表索引不超过5个(索引会增加查询效率,但是会降低插入和更新的速度) 避免建立冗余索引和重复索引(冗余:index...在代码中写分页查询逻辑时,若 count 为 0 应直接返回,避免执行后面的分页语句 ---- 参考: 《阿里巴巴Java开发手册》 《高性能可扩展MySQL数据库设计及架构优化》

1.2K20

JSP博客管理系统myeclipse开发mysql数据库mvc结构java编程

一、源码特点 JSP博客管理系统 是一套完善的web设计系统,对理解JSP java编程开发语言有帮助 mvc结构,系统具有完整的源代码和数据库系统主要采用B/S模式开发。...其中Myecplise作为开发工具,采用Mysql作为数据库服务器,Tomcat作为网络服务器。 本次设计将采用JSP+Servlet+javabean技术并采用MVC开发框架加以实现。...添加图片,mp3: 三、注意事项 1、管理员账号:admin密码:admin 数据库配置文件DBO.java 2、开发环境为TOMCAT7.0,Myeclipse8.5开发数据库mysql5.0,...使用java语言开发。...3、数据库文件名是jspmblog.sql ,系统名称mblog TIM图片20191013211820.png TIM图片20191013211859.png TIM图片20191013211915

1.8K30

linux系统定时备份MySQL数据库

一个项目的基础便是数据库,但是可能因为某些原因会导致数据丢失,或数据库结构变化,严重一点的或造成数据库删除。...为了以防万一,这时候就需要我们定时进行数据库备份,但是如果人来操作的话会是一个比较麻烦的工程,这时我们可以使用mysqldump写个脚本,由Linux的crontab来定时执行。...假如在我的数据库中有一个emp的数据库。...1.在linux系统中自定义一个文件夹,在我的服务器上我放在了/zhb/backup 2.在/zhb/backup下面建一个bkemp.sh的脚本文件 3.使用vi命令 vi ....[在这里插入图片描述]大功告成,当然我们实际应用中不需要每分钟进行数据库的备份,具体的crontab表达式可根据实际进行编写。

5.9K50

01-物联网开发终端管理篇-安装MySQL数据库(Windows系统)

iot_terminal_management" frameborder="0" scrolling="auto" width="100%" height="1500"> 说明 数据库软件可在官网下载最新版...https://dev.mysql.com/downloads/installer/ 也可以使用我已经下载好的 开始安装 1,把提供的文件拷贝到服务器 2,首先安装VS运行库 根据自己电脑系统选择安装..., 然后一直 下一步 3,安装Python 4,安装数据库 这个是使用命令操作数据库的,现在用不到,关闭就可以 这个是官方提供了一个工具,...可以用来管理配置数据库,或者设置一些用户的权限, 默认是使用root账户登录 使用navicat 连接 用户如果不习惯使用上面官方提供的工具,可以使用navicat 1,把navicat软件拷贝到服务器上

67840

python web开发 MySQL数据库基础

操作 MysQL 数据库 3.1 创建数据库 3.2 选择数据库 3.3 查看数据库 3.4 删除数据库 4. 数据类型 5....操作 MySQL 数据表记录 6.1 添加数据 6.2 查询、修改、删除 learning from 《python web开发从入门到精通》 1....简介 MySQL 是目前最为流行的开源数据库,网络化、跨平台的关系型数据库 特点:功能强大(多种引擎),跨平台,速度快(B树磁盘表+索引压缩),免费,支持多种语言,存储容量大(由外部操作系统对文件大小的限制决定...操作 MysQL 数据库 3.1 创建数据库 create database DBname; mysql> create database michaeldata; Query OK, 1 row affected...| michaeldata | +-------------+ 1 row in set (0.00 sec) 3.3 查看数据库 show databases;已经存在的数据库 mysql> show

1.7K30

4.2 图书借阅系统数据库设计 --MySQL

前言大家好,我是天罡gg,一个有十多年丰富经验的高级架构师,参与过很多系统数据库设计,在数据库设计方面有相当丰富的经验。...正赶上这篇实战专栏的数据库设计,所以今天让我们来一起做一下《图书借阅系统数据库设计》,一篇既有理论知识,又能实战落地的数据库设计!...本文从【需求分析】开始,到【概念结构设计】的画ER图, 再到【逻辑结构设计】的ER图转关系模型,最后到【物理结构设计】的MySQL表设计, 再加上【具体业务分析】的SQL实现,你是不是已经怀疑真有这么齐全吗...原文链接:https://blog.csdn.net/scm_2008/article/details/130072010 数据库设计的基本步骤 按照规范设计的方法,考虑数据库及其应用系统开发全过程,将数据库设计分为以下...当然,这只是一个小小的系统,有很多设计技巧还无法体现,一个合理的设计非常重要,可以支撑更大的业务场景,所以仅以本设计抛转引玉,后面有机会我们可以拿更多的场景或系统来设计,如果你有需求,也可以找我来设计,

4.2K31

MySQL-关系型数据库管理系统

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。...MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统)...MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。...MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。...MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库

3.1K40

mysql数据库旅游管理系统_JSP+MySQL基于ssm的旅游管理系统

本旅游管理系统主要包括系统用户管理模块、景点信息管理模块、变幻图管理、旅游线路管理、登录模块、和退出模块等多个模块。...管理员的登录模块:管理员登录系统对本系统其他管理模块进行管理。 用户的登录模块:用户登录本系统,对个人的信息等进行查询,操作可使用的功能。...景点信息管理模块: 景点信息列表:将数据库的景点信息表以列表的形式呈现给管理员。 添加景点信息:实现管理员添加景点信息。 修改景点信息:实现管理员修改景点信息。...公告文章管理模块: 公告文章列表:将数据库的公告文章表以列表的形式呈现给管理员。 添加公告文章:实现管理员添加公告文章。 修改公告文章:实现管理员修改公告文章。...退出模块: 管理员退出:管理员用来退出系统。 用户退出:用户用来退出系统

5K10

教你Linux系统命令迁移MySQL数据库

教你Linux系统命令迁移MySQL数据库为了迁移数据库,有如下三个步骤: 第一步 - 执行MySQL转储 在将数据库文件传输到新的VPS之前,我们首先需要使用mysqldump命令在原始虚拟服务器上备份它...mysqldump -u root -p --opt [database name] > [database name].sql 执行转储后,即可准备传输数据库。...第二步 - 复制数据库 SCP帮助您复制数据库。 如果使用上一个命令,则将数据库导出到主文件夹。...sql [username]@[servername]:path/to/database/ 样本传输可能如下所示: scp newdatabase.sql user@example.com:~/ 连接后,数据库将传输到新的虚拟专用服务器...第三步:导入数据库 一旦数据已传输到新服务器,您可以将数据库导入MySQLmysql -u root -p newdatabase With that, your transfer via SCP

2.9K00

MySQL数据库开发的 36 条军规

MySQL数据库开发的 36 条军规 标签:数据库 核心军规(5个) 尽量不在数据库做运算。 控制单表数量:行不超过500W条,超出分表;列不超过50个,超过拆表。...NULL(NULL字段很难查询优化、NULL字段的索引需要额外空间、NULL字段的复合索引无效) 尽量少用text/blob类型(尽量使用varchar代替text字段),需要的时候请拆表 不在数据库存图片...limit高效分页(limit越大,效率越低) limit 10000,10 改为 where id >xxx limit 11 使用union all替代union(union有去重开销) 发生高并发时,数据库少用两个表以上的...避免转换导致索引丢失) 使用 LOAD DATA 导入命令比 insert 速度快20倍左右(适合导入大量测试数据) 打散大批量更新(例如:在凌晨空闲时期更新执行) 约定类军规(4个) 隔离线上线下(开发用...不在程序端加锁,即外部锁,外部锁不可控,会导致高并发会炸,极难调试和排查 统一字符集为utf8_general_ci 统一命名规范,库表名一律小写,索引前缀用 idx_ 库名 用缩写(2-7字符),不使用系统关键字保留字命名

11510
领券