重复的SQLite错误 - 无法打开数据库文件

时间:2014-10-20 17:59:05

标签: linux database r sqlite

我有一个SQLite数据库,我正在清理和重新整形以进行分析。它的大小约为120GB。

我们买了一台更好的机器,更多内核,20倍内存等等。它还有一套四个1TB驱动器(我在一个物理驱动器上有root,我有/home在其他三个物理驱动器的RAID0阵列上。)

我正在开发一台资源少得多的机器,我的脚本完美运行(尽管速度很慢)。我从未遇到过这些错误和腐败。但是当我在新机器上运行完全相同的脚本时,我开始收到此错误。我无法打开数据库。我有备份,但这种情况经常发生,因为自从搬到新机器后我没有在分析方面取得任何进展。

Error in sqliteNewConnection(drv, ...) :
  RS-DBI driver: (could not connect to dbname:
unable to open database file
)
Calls: insertLinks ... .valueClassTest -> is -> is -> sqliteNewConnection -> .Call
In addition: Warning message:
In mclapply(idx, function(idx1) { :
  all scheduled cores encountered errors in user code
Execution halted

我执行的每个插入(一次1,000 - 10,000条记录)都封装在一个transcation中。以下是导致此特定错误的代码。

insertLinks <- function(b) {

  con <- dbConnect(SQLite(), dbpro)
  sql <- 'insert into link (emailid, md5, field, email, domain, company) values (?, ?, ?, ?, ?, ?)'
  dbBeginTransaction(con)
  dbGetPreparedQuery(con, sql, bind.data = b)
  dbCommit(con)
  dbDisconnect(con)

}

运行.log标准输出并尝试从SQLite提示符

中打开数据库时出错
(14) cannot open file at line 29016 of [27392118af]
(14) os_unix.c:29016: (2) open((unreachable)/databaseFile.db)

0 个答案:

没有答案