Typecho 更换数据库将MySQL转换成SQLite详细教程
介绍
上次给大家分享过如何将博客数据库从Mysql转化未Sqlite,这次就给大家说一下如何从Sqlite转成Mysql,博主的Typecho
一直使用的MySQL
数据库,突然想起Typecho
也同时支持SQLite
这种单文件的数据库,反正网站访客也不多,就想着换成SQLite
试试看,主要是备份也方便,不用再去单独备份一个数据库了,想了很久没动手,最近待在家左右无事,那就抱着折腾的心态动手试试吧;
注意:操作之前一定要备份!备份!备份!!!
开始
首先下载并安装需要使用到的软件MysqlToSqlite
传送门:点击下载
这是一款收费软件,但有30天的试用期,正好可以使用;
安装好后打开软件,填写好信息后点击Connect
如果出现绿色的connected
说明连接上了MySQL
数据库;MySQL
数据库的默认端口是3306
如果使用了宝塔面板需要将数据库的访问权限设置为所有人并设置放行3306
端口;
然后再设置转换成SQLite
数据库后文件的本地保存位置,设置好后点击Connect
连上MySQL
并设置好SQLite
的保存位置后点击OK
再选择All Table
然后选择需要转换的Typecho MySQL
数据条,建议全选,免得出错;
然后一直选择Next
即可,等待转换完成,出现下图就说明转换完成了;
最后在你刚才设置的保存位置里就已经生成了一个SQLite
数据库文件;
设置
数据库转换完成后就开始对Typecho
进行设置,让其使用SQLite
数据库文件;
首先将得到的SQLite
数据库文件上传到网站/usr/
目录下
注意:给数据库文件设置权限644
并且名称越长越复杂越好!!!
然后编辑根目录下的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);
修改完成后保存即可;
OK,MySQL转换SQLite就完成了,现在可以打开网站试试是否成功;