数据库排错记录

目录

一、 规范

  1. 尽量不要用select *,select 语句最好加上with(nolock)
  2. 数据量大的表必须要有主键,可以是自增ID
  3. 查询语句的条件里面的字段,要建立非聚集索引,一般是时间,唯一码(条码)。如果查询条件过多,需要添加的索引超过了5个,属于表设计有问题。
  4. 创建定时作业每个月都清理半年或者一年前数据和日志
  5. 日志自动增长设置为定值,我们的应用场景设置个50-100MB
  6. 尽量不适用order by
  7. 查询语句尽量精简,不要使用复合语句

二、 优化查询

1) 通过执行计划

执行语句时,打开执行计划,看在执行时,用的是什么查询方式

速度:表扫描 < 非聚集索引 < 聚集索引

表扫描:全表查询,条件非主键,也没索引

非聚集索引:查询条件的字段建立了非聚集索引

聚集索引:查询条件的字段建立了聚集索引(一般为主键)

三、 排查故障

1) 网络断连

现象:
1、 一般性网络错误。请检查网络文档。

2、 Comn getData. vi"(ERR>0bject x3E500000 is not valid.-) 输入参数无效。例如,输入路径可能包含操作系统不允许用于路径的字符(例如,?或@)。
排查方法:

1、win+R:弹出命令行

2、输入ping [ip] --t,[ip]根据数据库的电脑ip地址来修改
3.、等到软件出现上述网络断连的错误信息时,看是否出现"请求超时"或"无法访问目标网"

4、解决方法:按照网络拓扑图:

① 重压水晶头

② 更换网线

③ 更换交换机

2) 超时登录已断开

1、 需要根据数据库日志来定位具体错误
2、 项目上已发现的错误:

① 日志自动增长过大:数据库的日志文件在安装的时候设置为自动增长,并设置了10%的速率增长。
解决方法:日志自动增长设置为定值,我们的应用场景设置个50-100MB

3) 死锁

现象:

1.1、 事务(进程 ID 115)与另一个进程被死锁在锁资源上,并且已被选作死锁牺牲品。请重新运行该事务。

解决方法:

  1. 对update和select语句的条件增加索引,保证不会锁表,只会锁行
  2. Update加with(TABLOCKX)

4) 实例错误

现象:
在与SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且SQL Server 已配置为允许远程连接。provider:Named Pipes Provider,error:40-无法打开到SQL Server 的连接)(Microsoft SQL Server,错误:2) 系统找不到指定的文件。

解决方法:

1)首先,打开SQL Server Configuration Manager配置管理器

①右键电脑,选择管理,会弹出计算机管理页面
②依次选择服务和应用程序->SQL Server Configuration Manager->SQL Server-Service -> SQL Server(MSSQLSERVICE)
③右键SQL Server(MSSQLSERVICE)→属性
④在Log On(登录)页面,选为Network service
⑤右键SQL Server(MSSQLSERVICE)->Start(启动)

相关推荐
码农101号19 小时前
Mysql主从架构的搭建
数据库·mysql·架构
cqsztech19 小时前
ORACLE数据库中如何找到过去某个时间某个表被谁修改了
数据库·oracle
好记忆不如烂笔头abc19 小时前
sql评估存储的速度和稳定性
数据库·sql
小鹏linux19 小时前
《openGauss安全架构与数据全生命周期防护实践:从技术体系到行业落地》
数据库·opengauss·gaussdb
朝新_20 小时前
【实战】动态 SQL + 统一 Result + 登录校验:图书管理系统(下)
xml·java·数据库·sql·mybatis
装不满的克莱因瓶20 小时前
什么是脏读、幻读、不可重复读?Mysql的隔离级别是什么?
数据库·mysql·事务·隔离级别·不可重复读·幻读·脏读
aramae21 小时前
MySQL数据库入门指南
android·数据库·经验分享·笔记·mysql
Apache IoTDB21 小时前
时序数据库 IoTDB 集成 MyBatisPlus,告别复杂编码,简化时序数据 ORM 开发
数据库·struts·servlet·时序数据库·iotdb
isNotNullX21 小时前
怎么用数据仓库来进行数据治理?
大数据·数据库·数据仓库·数据治理
小坏讲微服务21 小时前
Spring Cloud Alibaba Gateway 集成 Redis 限流的完整配置
数据库·redis·分布式·后端·spring cloud·架构·gateway