typechoSQLIte转MySQL_将 Typecho 数据库由 MySQL 切换为 Sqlite

本文档详细介绍了如何将Typecho博客系统从MySQL数据库无缝迁移到SQLite,包括数据导出、转换过程及配置修改,以实现资源占用更低和备份更便捷的目标。
摘要由CSDN通过智能技术生成

原先本博客使用的数据库为 MySQL,但由于没有什么人访问,且没有其它人同时参与编辑内容,所以 SQLite 就满足需求了,而且有以下两点好处:占用资源低

因为是文本文件,备份方便

以下是在 Linux 平台下对 MySQL 数据库进行转换:首先需要对MySQL 数据库中的数据进行导出:

mysqldump -u数据库用户名 -p用户密码 数据库名字 > 数据库备份名字(建议将数据库名字命令的足够复杂)

如: mysqldump -utest -p123456 typecho > typecho.sql

开始转换

./mysql2sqlite typecho.sql | sqlite3 typecho.db

转换好之后,将 typecho.db 放置在 typecho 程序中的 usr 目录中,权限修改为 0644 ,所属用户和组与其它程序文件一致,随后修改 typecho 程序根目录下的 config.inc.php 文件:

将以下代码/** 定义数据库参数 */

$db = new Typecho_Db('Pdo_Mysql', 'typecho_');

$db->addServer(array (

'host' => '127.0.0.1',

'user' => 'xxxxxx',

'password' => 'xxxxxx',

'charset' => 'utf8',

'port' => '3306',

'database' => 'xxxxxx',

), Typecho_Db::READ | Typecho_Db::WRITE);

Typecho_Db::set($db);

替换为:/** 定义数据库参数 */

$db = new Typecho_Db('Pdo_SQLite', 'typecho_');

$db->addServer(array (

'file' => '这里填写数据库文件绝对路径,其它不用修改!例:/www/wwwroot/sunpma.com/usr/xxx.db',

), Typecho_Db::READ | Typecho_Db::WRITE);

Typecho_Db::set($db);

即可,如果访问首页,显示数据库错误,检查权限是否为 0644,另外 PHP 需要安装 SQLite 扩展。

那之前的 MySQL 数据库就可以停止了:systemctl stop mariadb

systemctl disable mariadb

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值