默认情况下,Pbootcms使用的是Sqlite数据库。感觉还是mysql好用一些,也方便。
今天教大家Pbootcms数据库转换教程。
一、准备工作
下载转换所需工具→
Pbootcms数据库转换教程.zip
二、教程
1、导出Sqlite数据库
打开工具中的 SQLiteStudio 软件,然后找到 pbootcms 的 data 文件下的数据库文件。然后将.db
文件拖到该软件中打开即可。如下图:
2、导出步骤
打开后,在文件名称上点击右键–>选择 "导数数据库",然后如下图:
勾选所有表,然后点击 "next"
3、导出步骤
导出格式:sql,编码: uft-8 ;最后一项一定要手动勾选,然后点击 "Finish"
4、导出结果
下边状态栏提示 ***** was successful.
表示导出成功。如下图:
5、修复表结构
通过编辑器或记事本打开上步中保存的数据库文件。
删除 BEGIN TRANSACTION ;以及上部所有内容,如下图画框的全部删除。
查找 "索引" 将第一个索引及下部所有内容删除,如下图:
6、导入mysql
通过 phpMyAdmin 来导入,如下图表示导出成功。
7、更改Pbootcms配置文件
找到 config 文件夹下的 database.php 文件,将 sqlite 改为 mysql 数据库。如下图配置:
return array(
'database' => array(
'type' => 'mysqli', // 取消注销并修改为mysqli
'host' => 'localhost', // 数据库服务器
'user' => '22xinwangzhan', // 数据库连接用户名
'passwd' => '22xinwangzhan', // 数据库连接密码
'port' => '3306', // 数据库端口
'dbname' => '22xinwangzhan' // 去掉注释,启用mysql数据库,注意修改前面的连接信息及type为mysqli
//'dbname' => '/data/42d7f248214bf4a6a1f5712fe9e689b4.db' // 注释此处禁用sqlite
)
);
8、访问访问一切正常,完结!
常见报错:
1、#1054 - Unknown column '*' in 'field list'
建表语句中缺少 * 字段导致插入数据出现问题。找到缺少字段的表,把该字段添加进入即可。
2、#1101 - BLOB, TEXT, GEOMETRY or JSON column 'gtype' can't have a default value
需要操作去除对应字段默认值
查找:DEFAULT '4' 替换为 DEFAULT ''
查找:DEFAULT '1' 替换为 DEFAULT ''