我正在使用Bolt CMS,我从git存储库下载了我的网站,并将其安装在本地计算机上,没有任何数据库。当我运行它时,Bolt创建了新的bolt.db.但我有自己的文件 - bolt.db,如果我替换新文件或只是将此bolt.db放在app / database文件夹中,则会出错:
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]:
General error: 11 database disk image is malformed' in W:\home\localhost\www\opart2\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\PDOConnection.php:92
Stack trace: #0 W:\home\localhost\www\site\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\PDOConnection.php(92): PDO->query('PRAGMA synchron...') #1 W:\home\localhost\www\site\vendor\doctrine\dbal\lib\Doctrine\DBAL\Connection.php(931):
Doctrine\DBAL\Driver\PDOConnection->query('PRAGMA synchron...') #2 W:\home\localhost\www\site\app\src\Bolt\Application.php(116):
Doctrine\DBAL\Connection->query('PRAGMA synchron...') #3 W:\home\localhost\www\site\app\src\Bolt\Application.php(69):
Bolt\Application->initDatabase() #4 W:\home\localhost\www\site\app\bootstrap.php(50): Bolt\Application->initialize() #5 W:\home\localhost\www\site\index.php(24):
require_once('W:\home\localho...') #6 {main} Next exception 'Doctrine\DBAL\Driver\PDOException' with message 'SQLSTATE[HY000]: General error: 11 databa in W:\home\localhost\www\site\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\AbstractSQLiteDriver.php on line 84
如何获取我的数据库?在这种情况下,PhpmyAdmin可以寻求帮助吗?
答案 0 :(得分:0)
你正在做的事情是正确的,你可以用你自己的数据库替换bolt.db,如果它没有找到它,Bolt只会创建一个新的。
我认为你遇到了一个单独的问题,你的sqlite db文件已经损坏,可能是因为你在使用它时备份了它。在此问题中有关于如何修复的更多信息:SQLite3 database or disk is full / the database disk image is malformed
从1.6.x版本的Bolt开始,您还可以为Sqlite数据库指定备用位置。在config.yml文件中,您可以设置路径和数据库名称。例如:
database:
driver: sqlite
databasename: mydb
path: /path/to/folder