当前位置:首页 >  站长 >  数据库 >  文章列表

  • 负载高但 CPU 空闲:IO wait 与 D 状态进程排查
    一个经典的矛盾现场:告警说负载20多,登上服务器top一看,CPU百分之八九十都在idle,机器却卡得敲命令都费劲。新手会怀疑监控坏了,老手知道这是IO瓶颈的标志性画面。要读懂它,得先弄明白loadaverage到底在数什么:Linux的负载统计的是“可运行状态(R)+不可中断睡眠(D)”的任务总数
    2026-09-08 10:45
  • MySQL 表损坏修复:MyISAM 和 InnoDB 是两套完全不同的打法
    网站某栏目突然打不开,日志里刷Tableismarkedascrashed,或者MySQL莫名重启后某张表查一下就断连——表损坏来了。动手修之前必须先搞清楚一件事:出问题的是MyISAM表还是InnoDB表,两者修法完全不同,用错方法轻则无效,重则把还能救的数据弄没。SHOWTABLESTATUS看
    2026-09-08 10:38
  • MySQL 写入失败与磁盘满:binlog 和 ibdata1 的膨胀处理
    半夜网站报数据库写入失败,登上服务器一看,磁盘100%。du一层层剥进去,/var/lib/mysql里有几十个mysql-bin.0000XX文件,加起来占了几十G。这就是binlog膨胀——MySQL8.0起binarylog默认开启,而清理周期默认30天,写入量大的库撑爆磁盘只是时间问题。这个
    2026-09-06 16:44
  • EXPLAIN结果看不懂?丢给AI要索引优化建议,人工确认再落地
    页面打开慢,查出来是某个SQL拖了后腿。你对MySQL有点基础,知道要看EXPLAIN,但type一列写着ALL,rows几万行,Extra里还有个Usingfilesort——认识每个词,就是不知道从哪下手改。这种时候,AI是个好参谋,但记住它只是参谋,拍板还得你自己来。第一步把证据收集齐:慢SQ
    2026-09-01 11:28
  • 用户昵称带个表情就存不进去?MySQL utf8 转 utf8mb4 完整迁移方案
    用户注册昵称是表情符,提交后昵称变成空白,或者干脆报错Incorrectstringvalue。这是MySQL老utf8的锅:它的utf8实现最多三个字节,而emoji和部分生僻字是四字节字符,塞不进去。真正的完整UTF-8在MySQL里叫utf8mb4,mb4就是mostbytes4。迁移分四层:
    2026-08-28 15:00
  • 手滑 DELETE 忘了 WHERE?binlog 十分钟找回误删数据
    DBA圈流传一句话:没删过库的人生不完整。但删了能找回来,才是真本事。误删数据的救命稻草就是binlog——它记录了每一行数据的变更,既能用来恢复,也能反查哪条语句闯的祸。前提是提前开了log-bin,没开的话神仙难救,所以第一件事去检查配置。SHOWVARIABLESLIKE'log_bin';-
    2026-08-28 14:52
  • 数据库备份脚本只会 dump 一把梭?这份定时备份方案能救命
    问过不少站长:有备份吗?答有,拷过一份。再问什么时候拷的?去年。这种备份等于没有。数据库备份要做到三条:自动化、异地存、定期演练恢复。三条都不难,一个脚本加一条cron全搞定。先说dump命令怎么写才对。默认参数导出的文件恢复时容易出问题,这几个参数建议照抄:mysqldump-uroot-p'密码
    2026-08-28 14:48
  • 一台数据库扛不住了?MySQL 主从复制搭建实录,附跳坑指南
    站点流量上来后,读写全压在一台MySQL上,页面越来越慢,更闹心的是没备份没冗余,机器一挂全站完蛋。主从复制是数据库水平扩展的第一步:主库写、从库读,顺便从库就是一台热备。原理不难,就是主库把变更写进binlog,从库拉回来重放。第一步,主库开binlog并建复制账号:#主库my.cnf[mysql
    2026-08-28 14:40
  • 服务器磁盘天天告警?八成是日志没轮转,logrotate 十分钟配好
    有个经典事故:网站跑了半年突然全挂,查半天发现是磁盘满了,罪魁祸首是access.log涨到了80GB。日志不管理,等于给服务器埋了个定时炸弹。Linux自带的logrotate就是干这个的,大多数发行版装完就有,不用额外装任何东西。logrotate的思路很简单:按你定的周期把当前日志改名存档,压
    2026-08-28 11:28
  • 表越删越慢?OPTIMIZE TABLE回收空间实录
    日志表每天删几十万行,文件却一点没变小,查询还越来越慢。这不是玄学,是InnoDB的机制:删除的数据只是打标记,空间留在文件里复用,但反复增删后数据页变得稀碎,扫描效率下降。碎到一定程度就得整理。先看碎片率再动手,information_schema里直接查。SELECTtable_name,ROU
    2026-08-27 17:15
  • 网站突然连不上数据库?SHOW PROCESSLIST排查实录
    页面集体报数据库连接失败,重启MySQL能救急,但过几小时又犯。这种病根基本是连接堆积:请求速度超过消化速度,连接数堆到max_connections上限,新连接全被拒。排查工具就是一条SQL。SHOWPROCESSLIST;--输出关键列:Id、User、Host、db、Command、Time、
    2026-08-27 15:58
  • MySQL索引为什么不生效:六个写法让EXPLAIN当场现形
    明明建了索引,查询还是全表扫描,几百万行的表一查十几秒。索引失效多数不是索引的问题,是SQL写法的问题。别猜,EXPLAIN一下,type列是不是ALL、key列是不是NULL,一目了然。EXPLAINSELECT*FROMordersWHEREDATE(create_time)='2026-08-
    2026-08-27 15:22
  • 网站数据自动备份:一个脚本+一个计划任务搞定
    网站备份是出事之后最后悔没做的东西。很多人服务器被黑后才发现数据库没备份,几年的内容一夜归零。其实一个shell脚本加一个定时任务就能解决。下面这个脚本同时备份MySQL数据库和网站源码,按日期命名,保留最近7天。Linux服务器直接放到/root/backup.sh,Windows可以改成Powe
    2026-08-25 18:06
  • 网站数据库优化:MySQL调优和缓存策略
    网站慢,很多时候不是带宽不够,而是数据库查询慢。优化MySQL其实就两件事:加索引和用缓存。先说索引。没索引的查询就是全表扫描,10万条数据能查出你服务器CPU飙到100%。加了索引,查询速度能提升百倍。--MySQL索引优化示例--查看慢查询(找出需要优化的SQL)SELECT*FROMmysql
    2026-08-21 11:30
  • OceanBase,分布式数据库“布道者”
    操作系统、芯片、数据库,是IT三大重要部分,也是中国创新企业发展的三大拦路虎。曾经,它们的共同特性是被国外厂商所占据,中国企业只能在此基础上做优化和调整。如今,操作系统和芯片国产化已经在路上,数据库国产化正在崛起。
    2021-09-15 10:53
  • Impala打开分布式技术的大门 天云数据Hubble数据库赶超
    在数据体量121亿条账户下进行资金查询测试,天云数据Hubble的性能是Impala的231%倍。
    2021-08-13 11:29
  • 2021-08-13 11:28
  • 习惯用excel却满足不了数据分析的需求怎么办?本文给您方法
    Excel可以说是如今最常用的做分析统计的工具了,简单易用且功能强大,但是excel难以满足一些高端的数据分析需求,主要存在的问题体现在数据共享、数据权限、数据量等方面。
    2021-07-06 11:22
  • 解决PostgreSQL 执行超时的情况
    经研究查找,PostgreSQL有关于SQL语句执行超时和事务执行超时的相关配置,而默认超时时间是10000毫秒,即10秒钟的时间,这样会导致执行时间稍长的任务执行失败。可以通过修改PostgreSQL服务器配置文件的方式修改默认配置。
    2021-06-05 17:15
  • postgresql 中的几个 timeout参数 用法说明
    这篇文章主要介绍了postgresql中的几个timeout参数用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧。
    2021-06-05 17:13
  • postgresql 中的参数查看和修改方式
    这篇文章主要介绍了postgresql中的参数查看和修改方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧。
    2021-06-05 17:11
  • postgresql 性能参数配置方式
    在进行性能调优之前,需要清楚知道服务器的配置信息,比如说CPU,内存,服务器版本等信息。
    2021-06-05 17:08
  • postgresql SQL语句变量的使用说明
    一般变量使用我们都是放在函数里面,这里开发需求,要在SQL直接使用变量,方便查找一些问题,比如时间变量,要根据时间进行筛选。
    2021-06-05 17:05
  • 浅谈PostgreSQL和SQLServer的一些差异
    这篇文章主要介绍了浅谈PostgreSQL和SQLServer的一些差异,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧。
    2021-06-04 17:39
  • Postgresql 存储过程(plpgsql)两层for循环的操作
    这条语句执行一个query并且丢弃结果。query的写法和你平常写SQLSELECT命令是一样的,只是把开头的关键字SELECT替换成PERFORM。PL/pgSQL的变量和平常一样代换到命令中。
    2021-06-04 17:30
  • postgresql 循环函数的简单实现操作
    这篇文章主要介绍了postgresql循环函数的简单实现操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧。
    2021-06-04 17:29
  • PostgreSQL 恢复误删数据的操作
    恢复的默认行为是沿着相同的时间线进行恢复,该时间线是基础备份创建时的当前时间线。如果你希望恢复到某个子女时间线(即,你希望回到在一次恢复尝试后产生的某个状态),你需要在recovery.conf中指定目标时间线ID。你不能恢复到早于该基础备份之前分支出去的时间线。
    2021-06-04 17:20
  • PostgreSQL 日志文件的所在位置
    这篇文章主要介绍了PostgreSQL日志文件的所在位置,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧。
    2021-06-04 17:15
  • PostgreSQL 打印日志信息所在的源文件和行数的实例
    一直好奇在PG中,当输出错误日志时,如何能够附带错误信息所在的源代码文件名以及发生错误的代码行数.postgres.conf中,log信息冗余级别为"default(默认)",terse:表示更加简单的日志信息,verbose:表示更加冗余的日志信息(即:附带"文件名和
    2021-06-04 17:14
  • PostgreSQL 使用raise函数打印字符串
    这篇文章主要介绍了PostgreSQL使用raise函数打印字符串,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧。
    2021-06-04 17:12

信息推荐