`
mr.zxing
  • 浏览: 70037 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

MYSQL面试题:简单叙述一下MYSQL的优化

阅读更多

1.数据库的设计
尽量把数据库设计的更小的占磁盘空间.
1).尽可能使用更小的整数类型.(mediumint就比int更合适).
2).尽可能的定义字段为not null,除非这个字段需要null.
3).如果没有用到变长字段的话比如varchar,那就采用固定大小的纪录格式比如char.
4).表的主索引应该尽可能的短.这样的话每条纪录都有名字标志且更高效.
5).只创建确实需要的索引。索引有利于检索记录,但是不利于快速保存记录。如果总是要在表的组合字段上做搜索,那么就在这些字段上创建索引。索引的第一部分必须是最常使用的字段.如果总是需要用到很多字段,首先就应该多复制这些字段,使索引更好的压缩。
6).所有数据都得在保存到数据库前进行处理。
7).所有字段都得有默认值。
8).在某些情况下,把一个频繁扫描的表分成两个速度会快好多。在对动态格式表扫描以取得相关记录时,它可能使用更小的静态格式表的情况下更是如此。
2.系统的用途
1).尽量使用长连接.
2).explain 复杂的SQL语句。
3).如果两个关联表要做比较话,做比较的字段必须类型和长度都一致.
4).LIMIT语句尽量要跟order by或者 distinct.这样可以避免做一次full table scan.
5).如果想要清空表的所有纪录,建议用truncate table tablename而不是delete from tablename.
6).能使用STORE PROCEDURE 或者 USER FUNCTION的时候.
7).在一条insert语句中采用多重纪录插入格式.而且使用load data infile来导入大量数据,这比单纯的indert快好多.
8).经常OPTIMIZE TABLE 来整理碎片.
9).还有就是date 类型的数据如果频繁要做比较的话尽量保存在unsigned int 类型比较快。
3.系统的瓶颈
1).磁盘搜索.
并行搜索,把数据分开存放到多个磁盘中,这样能加快搜索时间.
2).磁盘读写(IO)
可以从多个媒介中并行的读取数据。
3).CPU周期
数据存放在主内存中.这样就得增加CPU的个数来处理这些数据。
4).内存带宽
当CPU要将更多的数据存放到CPU的缓存中来的话,内存的带宽就成了瓶颈.

分享到:
评论

相关推荐

    MySQL面试题:基础知识与实战技巧

    MySQL是世界上最流行的关系型数据库管理系统之一,其面试题通常涵盖了基础概念、性能优化、事务处理、并发控制等多个方面。以下是一些重要的MySQL知识点,结合给定的面试题内容进行详细阐述: 1. **存储引擎的区别*...

    MySQL面试题:从基础到进阶全面解析

    在面试中,理解和掌握MySQL的基础知识、高级特性和拓展功能是至关重要的。 基础篇的知识点主要包括: 1. MySQL的基本概念:理解MySQL是一个开源、免费的SQL数据库,广泛应用于Web应用。 2. 表结构:了解如何创建...

    牛客大数据面试题集锦+答案,共523道,46W+字。大厂必备

    数据库(MySQL)面试题:44道 面试题总结是一个长期工作,面试不停,这份面试题总结就不会停。以后会慢慢把Java相关的面试题、计算机网络等都加进来,其实这不仅仅是一份面试题,更是一份面试参考,让你熟悉面试题...

    mysql面试题(金三银四)

    mysql面试题(金三银四)mysql面试题(金三银四)mysql面试题(金三银四)mysql面试题(金三银四)mysql面试题(金三银四)mysql面试题(金三银四)mysql面试题(金三银四)mysql面试题(金三银四)mysql面试题(金三银四)mysql面试题...

    2023最新100道MySQL面试题( 附答案解析)

    2023最新100道MySQL面试题( 附答案解析)2023最新100道MySQL面试题( 附答案解析)2023最新100道MySQL面试题( 附答案解析)2023最新100道MySQL面试题( 附答案解析) 2023最新100道MySQL面试题( 附答案解析) ...

    php mysql 面试题集锦

    【PHP与MySQL面试知识点】 ... - 控制结构:理解if/else、switch/case、for、while、do/while...以上是基于"PHP mysql 面试题集锦"的主题,涵盖的常见知识点。理解和掌握这些内容将有助于应对PHP和MySQL相关的面试挑战。

    mysql常见面试题汇总

    mysql常见面试题汇总,mysql常见面试题汇总 mysql常见面试题汇总,mysql常见面试题汇总 mysql常见面试题汇总,mysql常见面试题汇总 mysql常见面试题汇总,mysql常见面试题汇总 mysql常见面试题汇总,mysql常见面试题...

    经典MySQL面试题及答案.rar

    经典MySQL面试题及答案.rar 经典MySQL面试题及答案.rar 经典MySQL面试题及答案.rar 经典MySQL面试题及答案.rar 经典MySQL面试题及答案.rar 经典MySQL面试题及答案.rar 经典MySQL面试题及答案.rar 经典MySQL面试题及...

    mysql面试题 mysql面试题

    mysql面试题 mysql面试题

    Java面试题 MySql优化

    Java面试题 MySql优化Java面试题 MySql优化Java面试题 MySql优化Java面试题 MySql优化Java面试题 MySql优化Java面试题 MySql优化Java面试题 MySql优化Java面试题 MySql优化Java面试题 MySql优化Java面试题 MySql优化...

    牛客大数据面试题集锦+答案,共523道,46W+字 面试题总结一网打尽

    数据库(MySQL)面试题:44道 面试题总结是一个长期工作,面试不停,这份面试题总结就不会停。以后会慢慢把Java相关的面试题、计算机网络等都加进来,其实这不仅仅是一份面试题,更是一份面试参考,让你熟悉面试题...

    2022java面试题、JVM面试题、多线程面试题、并发编程、Redis面试题、MySQL面试题、Java2022面试题

    2022java面试题、JVM面试题、多线程面试题、并发编程、Redis面试题、MySQL面试题、Java2022面试题、Netty面试题、Elasticsearch面试题、Tomcat面试题、Dubbo面试题、Kafka面试题、Linux面试题、2021面试题、java面试...

    MySQL面试精粹:90%场景题深度剖析

    ### MySQL面试精粹:90%场景题深度剖析 #### 一、MySQL执行流程详解 **1. 授权认证** MySQL的执行流程首先是从授权认证开始。用户通过命令行工具或其他客户端工具连接到MySQL服务器时,需要提供用户名、主机名/IP...

    MySql面试题.doc

    【MySQL面试题解析】 MySQL是世界上最流行的关系型数据库管理系统之一,尤其在Web开发领域中广泛应用。以下是一些MySQL面试中的常见问题及其详细解答: 1. 数据库是什么? 数据库是一个用于存储和管理数据的系统...

    110道 MySQL面试题及答案

    这份文档包含了110道MySQL面试题及其答案,旨在帮助准备MySQL面试的人更好地准备和学习。 ## 查询语句 1. 如何查询表中的所有记录? 答案:使用SELECT语句,例如:SELECT * FROM table_name; 1. 如何查询表中的...

    2024年java面试题-数据库MySQL面试题第一部分

    根据给定文件的信息,我们可以总结出一系列关于MySQL的知识点,特别是针对面试中可能出现的问题及其解答。下面是详细解析: ### 1. ID 自增主键的行为 - **问题**:一张表中有 ID 自增主键,当插入了 17 条记录之后...

    mysql面试题 MySQL面试题 数据库面试题 SQL面试题

    mysql, 面试题, 数据库, 数据管理, 数据库管理, 数据库设计, sql, 数据查询, 数据库优化, 数据库安全, 数据库备份, 数据库恢复, 数据库性能, 数据库索引, 数据库事务, 数据库存储引擎, 数据库连接池, 数据库分库分表...

    MySQL面试题及答案.pdf

    MySQL 面试题及答案 MySQL 是一种开源的关系型数据库管理系统,广泛应用于 Web 应用开发中。以下是 MySQL 相关知识点的总结: 1. 自增主键:在 MySQL 中,自增主键的最大 ID 记录在数据文件中。如果表类型是 ...

Global site tag (gtag.js) - Google Analytics