转换数据库
从Berkeley DB 到 MySQL。
看似简单,但是转换时还是碰到了问题。
在调用mt-db2sql.cgi文件,进行升级时总是出现下列错误:
WARNING: Use of uninitialized value in string eq at C:\Inetpub\wwwroot\mt\lib/MT/Util.pm line 554.
而且之后,就停止了。
尝试了多次,总是有这个问题。
最后google之后才明白只要在设置中turning off Trackback Autodiscovery,就不会出错,可以升级了。
下面把具体操作介绍一下:
Step 0:
Backup all db files.
Step 1:
Download MySQL Administrator program.
Install it.
Add new schema "mt"
Step 2:
Install DBD::MySQL
Step 3:
Edit mt.cfg
remove the # characters in front of: ObjectDriver DBI::mysql Database
Step 4:
Edit mt-db-pass.cgi
Enter the password of the user for mysql's DBUser
Step 5:
Run mt-db2sql.cgi
Step 6:
Edit mt.cfg
Put a # character in front of the line: DataSource .db
finish.
关于Berkeley DB和MySQL在Movable Type中的优劣之分,有许多文章:
MT database: Berkeley DB vs. MySQL
Just say NO to Berkeley DB for your MT database - PLEASE
关于如何升级的文章
Upgrading MovableType Berkeley to MySQL