tnblog
首页
视频
资源
登录

数据库的优化

6310人阅读 2021/5/7 8:29 总访问:60674 评论:0 收藏:1 手机
分类: 数据库

项目的优化首先就是关于数据库的优化,因为大部分带宽的占用都是数据库
这个只是一个大概的概括,后期会出每个优化方式的详细文章
一、sql语句的优化
1.使用连接(JOIN)来代替子查询
2.使用联合(UNION)来代替手动创建的临时表

二、缓存
    对于数据库而言,访问最多的就是查询了,然后把查询中访问比较多的都做缓存,后期读取的时候读的就是硬盘数据,要比读数据库快,把缓存写到第二点的主要原因还是缓存不花钱且见效快

三、读写分离
    还是那句话,关于数据库访问最多的无疑是查询,读写分离的话就是把读和写分库,增删改操作主库,主库再把操作日志发送到订阅服务器(也不是必须用日志,但是日志效率更高),然后从库通过订阅订阅服务器获取日志进行数据库修改,缺点就是有一定的延时,但是如果要求0延时的数据,也可以直接从主库访问,如果全部或者大部分数据都需要0延时这样就不合适了

    查询操作从库:从库可以做多个从库,这时候就需要做负载均衡了
四、表分区
    表分区就是把一个数据量很大的表按照特定的方式分成多块,查询的时候就可以指定查询某一块,节约了检索整个表的时间,这一般是数据库自带的功能

五、分库分表
    分库:分库就类似于微服务,一般是按照功能进行分库,比如说把用户模块分成一个库,把商品模块分成一个库,如果商品模块里面需要访问用户数据,通常建议调用用户模块的数据访问层进行访问,不建议直接写到商品的数据访问层里面,降低耦合
    分表:就是把字段比较多的表分成两个或者多个表,表内容的修改一般不会覆盖到表的每一个字段,就把修改比较多的字段分离出去,表之间通过主外键连接

总结:这些都是皮毛,就是一个大概的思路,后期我会根据这个思路详细写出每一步的具体操作以及优势和弊端

评价

oracle数据库中没有scott用户

使用SYS用户登录conn sys/密码 as sysdba(默认密码123456)然后找到oracle安装目录下scott.sql的这个文件然后执行命令:@+...

没有为 SQL 缓存通知启用数据库

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regsql -S 数据库IP -U 登录名 -P 密码 -d 数据库名称 -t 表名 -et

ado.net访问数据库的基本用法

放回datatable//1:开打数据库的连接 using(SqlConnectionconn=newSqlConnection("server=.;uid=sa;pwd=123456;databa...

多线程、Lock锁、数据库实现队列

队列其元素以先进先出(Firstin,Firstout,FIFO)的方式来处理的集合。先放入队列中的元素会先读取。队列使用System.Collect...

思宇上课笔记—SQL数据库分页查询的方式

jQuery课堂实例分页在实际开发中经常被用到,今天就来介绍下SQL数据库分页的几种常见方式。 下面的例子都以每分5条数据为一...

遍历数据库中表的T4模板

简单的案例创建文本模板ctrl+s出奇迹<#@templatedebug="false"hostspecific="false"language=&quot...

日志是写数据库好还是文件好,以及日志策略

先来看看大佬的一句话:离开需求谈技术都是扯淡主要是看你的日志是为了只做一个存储归档,还是要把数据对统计与分析如果只...

数据库的varchar和nvarchar的区别

搞了一个上午,自己测试看懂的一点点小东西,现在记录下来....数据库的varchar和nvarchar的区别首先内存上:1--8000 1--400...

mysql数据库基础

1 数据库和表操作 2 数据操作 3 高级查询 4 mysql管理1 数据库和表操作 数据库 创建:create database 数据库名 [default ...

EF连接mysql连接mysql数据库操作中文数据乱码解决方法

修改数据库的连接字符器在连接字符器添加charset=gb2312。注意事项:(1)字符编码不支持UTF8。(2)必须使用规定编码。示例:&...

EF连接mysql数据库

注意事项准备工作(1)下载MySQL数据库软件6.6.6版本。 (2)下载MySQL数据库mysql-connector-net-6.6.6两者不一样都不能少。(...

EF操作数据库的数据迁移

Enable-Migrations启用数据库迁移。Enable-Migrations –EnableAutomaticMigrations 启动自动迁移。Update-Database 更新到...

redis使用list存储热点数据库

今天,又学啦一点新知识,redis(缓存),看到这个单词的时候想必大家都会有一种似曾相识的感觉吧准备好,我要开始讲解啦首先我...
新手码农
排名
43
文章
7
粉丝
1
评论
2
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术