我正在尝试使用 Banshee,但是当我启动它时,它显示这个(致命错误),这似乎与 Mono 有关(已安装,但可能无法工作..)
Si è verificata un eccezione non gestita:Sqlite error 11: database disk image is malformed (SQL:
BEGIN TRANSACTION;
DELETE FROM CoreSmartPlaylistEntries WHERE SmartPlaylistID IN (SELECT SmartPlaylistID FROM CoreSmartPlaylists WHERE IsTemporary = 1);
DELETE FROM CoreSmartPlaylists WHERE IsTemporary = 1;
COMMIT TRANSACTION)
at Hyena.Data.Sqlite.Connection.CheckError (Int32 errorCode, System.String sql) [0x00000] in <filename unknown>:0
at Hyena.Data.Sqlite.Connection.Execute (System.String sql) [0x00000] in <filename unknown>:0
at Hyena.Data.Sqlite.HyenaSqliteCommand.Execute (Hyena.Data.Sqlite.HyenaSqliteConnection hconnection, Hyena.Data.Sqlite.Connection connection) [0x00000] in <filename unknown>:0
Exception has been thrown by the target of an invocation.
at System.Reflection.MonoCMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
at System.Reflection.MonoCMethod.Invoke (BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
at System.Reflection.ConstructorInfo.Invoke (System.Object[] parameters) [0x00000] in <filename unknown>:0
at System.Activator.CreateInstance (System.Type type, Boolean nonPublic) [0x00000] in <filename unknown>:0
at System.Activator.CreateInstance (System.Type type) [0x00000] in <filename unknown>:0
at Banshee.Gui.GtkBaseClient.Startup () [0x00000] in <filename unknown>:0
at Hyena.Gui.CleanRoomStartup.Startup (Hyena.Gui.StartupInvocationHandler startup) [0x00000] in <filename unknown>:0
.NET Version: 2.0.50727.1433
OS Version: Unix 2.6.39.0
Assembly Version Information:
gkeyfile-sharp (1.0.0.0)
Banshee.AudioCd (2.0.0.0)
Banshee.CoverArt (2.0.0.0)
Banshee.Mpris (2.0.0.0)
Migo (2.0.0.0)
Banshee.Podcasting (2.0.0.0)
Banshee.Dap (2.0.0.0)
Banshee.MultimediaKeys (2.0.0.0)
Banshee.Bpm (2.0.0.0)
Banshee.WebBrowser (2.0.0.0)
Banshee.Wikipedia (2.0.0.0)
pango-sharp (2.12.0.0)
Banshee.Fixup (2.0.0.0)
Banshee.Widgets (2.0.0.0)
gio-sharp (2.14.0.0)
gudev-sharp (1.0.0.0)
Banshee.Gio (2.0.0.0)
Banshee.GStreamer (2.0.0.0)
System.Configuration (2.0.0.0)
NDesk.DBus.GLib (1.0.0.0)
gconf-sharp (2.24.0.0)
Banshee.Gnome (2.0.0.0)
Banshee.NowPlaying (2.0.0.0)
Mono.Cairo (2.0.0.0)
System.Xml (2.0.0.0)
Banshee.Core (2.0.0.0)
Hyena.Data.Sqlite (2.0.0.0)
System.Core (3.5.0.0)
gdk-sharp (2.12.0.0)
Mono.Addins (0.4.0.0)
atk-sharp (2.12.0.0)
Hyena.Gui (2.0.0.0)
gtk-sharp (2.12.0.0)
Banshee.ThickClient (2.0.0.0)
Nereid (2.0.0.0)
NDesk.DBus.Proxies (0.0.0.0)
Mono.Posix (2.0.0.0)
Hyena (2.0.0.0)
NDesk.DBus (1.0.0.0)
glib-sharp (2.12.0.0)
System (2.0.0.0)
Banshee.Services (2.0.0.0)
Banshee (2.0.0.0)
mscorlib (2.0.0.0)
平台信息:Linux 2.6.39-0-generic x86_64 x86_64 GNU/Linux
分发信息:
[/etc/lsb-release]
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=11.04
DISTRIB_CODENAME=natty
DISTRIB_DESCRIPTION="Ubuntu 11.04"
[/etc/debian_version]
squeeze/sid
我可以尝试什么?我已尝试重新安装 banshee 和 mono。
答案1
Sqlite 错误 11:数据库磁盘映像格式不正确
从日志的这一行来看,您的数据库似乎已损坏。您可以按照日志底部的说明进行修复Banshee 常见问题解答页面. 在终端中运行以下命令:
cd ~/.config/banshee-1
sqlite3 banshee.db ".dump" > dump
mv banshee.db banshee.db.backup
cat dump | sqlite3 banshee.db
通常这种数据库损坏是由于 Banshee 崩溃或 Banshee 运行时系统崩溃或断电造成的。
为什么这种情况在 Banshee 中如此常见?
由于 Banshee 数据库的设置方式,这种类型的错误在 Banshee 中比在使用 SQLite 数据库的其他应用程序中更常见。通过设置PRAGMA 同步至 OFF,Banshee 的 SQLite 数据库的性能有所提高,但不幸的是,Banshee 存在更高的数据库损坏风险(但不是数据丢失)。一旦错误 621057已修复,用户甚至不会再注意到这个错误,因为 Banshee 会自动从中恢复。