前段时间把博客迁到本地才发现,其实mysql的资源占用非常高。对于一般的个人博客,对数据库分析语句的执行效率并没有太大的需求,那么mysql就显得有些多余了。并且在迁移的的时候,mysql需要完成导出导入等操作,也要一定的学习成本。相较而言SQLite就可以很方便的迁移(数据库本体是一个db文件)。因此我感觉对大多数人而言,SQLite是一个很好的选择,没必要去追求mysql。
高情商:“为了更加环保,呼吁大家使用SQLite作为个人博客的数据库!”
个人博客完全可以静态化,不用任何数据库。 比如这个: https://hexo.io/zh-cn/ 小米20定制版
完全没必要mysql,那点访问量还不够sqlite塞牙缝的
@听风念,只要你不是大量并发写,SQLite 应该还比 MySQL 快的。。
直接以文件IO当做存储吧 只不过可能需要搞定评论, 接一个第三方评论系统就行。
@水木易安,要是有标签、类别等信息呢
@无名啊,标签,类别信息只会在新增或者编辑的时候产生变化,还是通过文件来存
@水木易安,咋组织目录结构呢?
这样?
articles/ | 个人博客真的有必要使用mysql吗?.html \ 年付3.6元的停止运营了.html types.json tags.json
@无名啊,文章还是记录一个id吧,然后使用meta.json来关联标题和ID
毕竟文章标题比较松散
@水木易安,这样?
articles/ | 1.html \ 2.html meta.json
meta.json:
{ "types": { "1": "电脑", "2": "杂类" }, "tags": { "1": "标签1", "2": "标签2" }, "articles": { "1": { "types": 1, "tags": [1, 2], "title": "个人博客真的有必要使用mysql吗?" } } }
@无名啊,对的对的 我一直都是无脑mysql,直到最近我才发现mysql占用真的高
@听风念,@老虎会游泳 以前也是用 SQLite 保存老虎林论坛数据的(可以搜索老虎过往有关 SQLite 的回复知晓)
SQLite
不知后来为啥换成 MySQL 了。。
帖子
点击数
@无名啊,性能瓶颈啊,SQLite的并发连接数是1。
@老虎会游泳,应该可以多个连接并发读吧?
确实,有写入的话,其他连接都会阻塞(即并发数为1)。
但改为 WAL 模式(类似于 MySQL 的 redo log),可以允许多个读取连接+一个写入连接(先顺序写入 *.db-wal,有空时再写回 *.db)。
考虑目前论坛的热度,感觉 SQLite 应该能撑得起?(如果优化了频繁更新帖子点击量问题)
纯粹 HTML 静态,活着就好,反正也不是大站
HTML
个人博客完全可以静态化,不用任何数据库。
比如这个: https://hexo.io/zh-cn/
小米20定制版
完全没必要mysql,那点访问量还不够sqlite塞牙缝的
@听风念,只要你不是大量并发写,SQLite 应该还比 MySQL 快的。。
直接以文件IO当做存储吧

只不过可能需要搞定评论, 接一个第三方评论系统就行。
@水木易安,要是有标签、类别等信息呢
@无名啊,标签,类别信息只会在新增或者编辑的时候产生变化,还是通过文件来存
@水木易安,咋组织目录结构呢?
这样?
@无名啊,文章还是记录一个id吧,然后使用meta.json来关联标题和ID
毕竟文章标题比较松散
@水木易安,这样?
meta.json:
@无名啊,对的对的 我一直都是无脑mysql,直到最近我才发现mysql占用真的高
@听风念,@老虎会游泳 以前也是用 SQLite 保存老虎林论坛数据的(可以搜索老虎过往有关
SQLite
的回复知晓)不知后来为啥换成 MySQL 了。。
帖子
表的点击数
字段,导致频繁并发写,导致经常锁库,导致并发性能低下?)@无名啊,性能瓶颈啊,SQLite的并发连接数是1。
@老虎会游泳,应该可以多个连接并发读吧?
确实,有写入的话,其他连接都会阻塞(即并发数为1)。
但改为 WAL 模式(类似于 MySQL 的 redo log),可以允许多个读取连接+一个写入连接(先顺序写入 *.db-wal,有空时再写回 *.db)。
考虑目前论坛的热度,感觉 SQLite 应该能撑得起?(如果优化了频繁更新帖子点击量问题)
纯粹
HTML
静态,活着就好,反正也不是大站