当我在 Shotwell 中从 SD 卡导入照片时,我的笔记本电脑崩溃了(由于过热而关机)。现在,我无法再启动 Shotwell:
$ shotwell
**
ERROR:x86_64-linux-gnu/db/VersionTable.c:104:version_table_construct: assertion failed: (res == SQLITE_OK)
Run Code Online (Sandbox Code Playgroud)
如果我将.db文件移到~/.shotwell/data/photo.db别处,使其不再存在(但已备份),shotwell 将启动,但将重建其库,该库将为空。我可以重新导入 Shotwell 创建的文件夹,但我丢失了几乎所有元数据(最重要的是“文件夹”或事件及其主图片)
有没有办法修复/重建/恢复photo.db?我怎样才能看到里面的东西?损坏有多严重?
还是有另一种方法来取回我的事件和导入?
我是 sqlite 的新手,我刚刚通过使用获得了 sqlite 的二进制文件wget http://www.sqlite.org/sqlite-shell-linux-x86-3071300.zip,然后从 zip 文件中提取了 sqlite3,它不起作用,它让我发疯了,请帮助。
我的操作系统是Ubuntu 12.04 64位,sqlite的执行步骤如下,
u1@newhost:/tmp$ ls -hl sqli*
-rwxrwxr-x 1 u1 u1 568K Jun 11 17:35 sqlite3
-rw-rw-r-- 1 u1 u1 310K Jun 12 02:53 sqlite-shell-linux-x86-3071300.zip
u1@newhost:/tmp$ file sqlite3
sqlite3: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0x8637c6613a485b675a05f155564cc0eda4b2d3cc, stripped
u1@newhost:/tmp$ ./sqlite3 mydb.db
-bash: ./sqlite3: No such file or directory
u1@newhost:/tmp$
Run Code Online (Sandbox Code Playgroud)
出于安全原因,我删除了 . 来自 $PATH,所以我只是./sqlite3用来启动
更新如下:
这种方式适用于 Fedora …
我有 SQLite3 的 Ubuntu 存储库,带有v3.7.17. 但它没有.save作为较新版本的命令。
要更新我做了:
sudo apt-get purge sqlite3./configure && make && sudo make install但是现在当我尝试从命令行运行时sqlite3,我得到:
SQLite header and source version mismatch
2013-05-20 00:56:22 118a3b35693b134d56ebd780123b7fd6f1497668
2014-04-03 16:53:12 a611fa96c4a848614efe899130359c9f6fb889c3
Run Code Online (Sandbox Code Playgroud)
搜索我找到了两个我尝试过但没有成功的解决方案:
知道如何解决这个错误吗?
根据unixODBC驱动程序页面(直接从 90 年代开始),我应该从以下位置下载 SQLite3 驱动程序:http : //www.ch-werner.de/sqliteodbc
sqliteodbc从该页面上提供的源代码构建的说明可在此处获得:http : //www.ch-werner.de/sqliteodbc/html/index.html
根据该页面,我们应该将源文件解压到一个目录中,然后运行以下命令:
1) ./configure
2) make
3)make install
但是,当我./configure在目录中运行时,出现以下错误:
configure: error: No usable SQLite header/library on this system
我该怎么办?
正如你们中的许多人所做的那样,本周我从 Lucid 升级到 Precise,几乎所有东西似乎都能找到。
除了…… SQLite,它以前运行良好,但现在不行了。
我检查了一切:phpinfo()、php.ini、sqlite3.ini。
该sqlite命令工作正常,但是当我尝试使用 PHP ... *PLOP* 时,没有任何效果。
我收到消息
Fatal error: Class 'SQLiteDatabase' not found in /var/www/test/sqlite/index.php on line 4
Run Code Online (Sandbox Code Playgroud)
第 4 行正在
$db = new SQLiteDatabase('test.sqlite', 0666);
Run Code Online (Sandbox Code Playgroud)
任何提示?
编辑
你可以在这里看到我的 phpinfo():http : //pastebin.com/jQ7Bz0GN
apache日志是
* Restarting web server apache2
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
... waiting apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
Run Code Online (Sandbox Code Playgroud) 我使用 OpenOffice Base 作为 SQlite 数据库的前端,在 10.04 中通过 ODBC 链接。
我要更新到 12.04,所以我加载了 LibreOffice Base,看起来就像 OObase。我在一个驱动器上有 12.04,在另一个驱动器上有 10.04。
我加载了Sqliteman、sqlite3、unixodbc-bin、unixodbc、libsqliteodbc、sqlitebrowser。
我复制了我的数据库目录。
但是在终端 ODBCConfig 不在 12.04 系统上。
所以我odbc.ini从 10.04 上的主目录复制到 12.04 主目录,现在 LibreOffice Base 可以访问我的数据库,一切正常。
任何人都知道 ODBCConfig 的问题是什么,它是 QT 变化的另一个受害者吗?当然我可以odbc.ini用jedit编辑,现在我可以看到格式了。
在终端我试过sudo find / -name ODBCConfig,但它不在那里。
我无法在 QT creator 或 gallery 中找到一个工作示例来将 SQLite 离线存储 API 用于 Ubuntu 触摸应用程序。
我正在根据此处的说明在 Ubuntu Server 16.04.1 上安装 COTURN 。所有步骤都做得很好,但在尝试运行turnserver时发生此错误:
Error retrieving SQLite DB information: file is encrypted or is not a database
Run Code Online (Sandbox Code Playgroud)
我在谷歌上搜索了上述错误,主要发生在SQLite. 但是我完全按照安装说明完成了步骤,并且不知道如何解决问题。
尝试使用以下sqlite3命令安装命令行工具:
sudo apt-get install sqlite3 libsqlite3-dev
Run Code Online (Sandbox Code Playgroud)
但我仍然无法运行 ./sqlite3 - nu souch file
如何解决这个问题呢?
我在 Ubuntu 16.04 上使用 GnuCash 没有问题。现在切换到 18.04 后我无法打开 GnuCash 文件。它给出了这样的消息:
没有找到合适的后端...
如果我没记错的话,我使用的是 SQLite 后端。然而现在我找不到为 GnuCash 安装 SQLite 后端的方法,尽管我已经安装了 sqlite3 包。
是否可以在默认 Ubuntu 存储库中为 GnuCash 安装 SQLite 后端?
提前致谢。
我已经看到了有关安装 .tar.xy 文件的其他线程,但 SQLite Studio 没有附带安装程序。从网站上 - “所有文件都是可移植的软件包(没有安装程序,只需下载、解压缩并运行)。” 我已经使用 tar xvf <file_name> 解压缩,但现在我有一个似乎无法运行的文件夹。