2014-07-19 11 views
1

Mac OS X 서버 (10.9)에 phpBB3을 설치했으며 4 월 이래로 몇 시간 전까지 정상적으로 실행되었습니다. 문제의 정확한 원인을 알 수는 없지만, OS X Server 10.9.4 업데이트를 설치 한 후에 어떻게 든 데이터베이스의 무결성을 잃어버린 것으로 보입니다. 그래서 나는 일어난 일과 내가 시도한 것을 설명 할 것이다.phpBB3 SQL 데이터베이스 테이블이 존재하지 않습니다. ERROR; 백업에서 가져 오거나 깨진 데이터베이스를 삭제할 수 없습니다.

포럼에 액세스하려고하면 다음 오류 메시지가 나타납니다.

General Error 
SQL ERROR [ mysql4 ] 
Table 'phpbb3.phpbb_config' doesn't exist [1146] 
An sql error occurred while fetching this page. Please contact an administrator if this problem persists. 

그런 다음 phpMyAdmin에 가서 데이터베이스 phpbb3을 클릭했습니다. 그것은 테이블이 없다고 말했다. 나는 그것을 고치는 법을 몰랐다. 그래서 TimeMachine을 사용하여 OS X Server를 업데이트하기 전에 시스템의 이전 상태를 복구했습니다. 포럼은 괜찮 았지 만, 나는 맹목적으로 OS 업데이트를 다시 시도하고 문제를 되풀이했다. 나는 TimeMachine을 다시 사용했다. 이번에는 포럼이 회복되지 않았습니다. 그 사이에 TimeMachine 백업이 가득 차서 나는 모든 TimeMachine 백업을 잃어버린 것을 깨달았다. 이렇게하면 더 이상 phpBB3 포럼을 복구 할 수 없습니다.

저는 TimeMachine 백업으로 복구를 포기하고 phpMyAdmin을 통해 마지막 백업을 가져 와서 데이터베이스를 복구하려고했습니다. 백업은 2 개월 전에 완료되었지만 여전히 아무것도하지 않는 것보다 낫습니다. 그러나 가져 오기가 작동하지 않았습니다.

Error 
SQL query: 

CREATE TABLE IF NOT EXISTS `phpbb_acl_groups` (
    `group_id` mediumint(8) unsigned NOT NULL DEFAULT '0', 
    `forum_id` mediumint(8) unsigned NOT NULL DEFAULT '0', 
    `auth_option_id` mediumint(8) unsigned NOT NULL DEFAULT '0', 
    `auth_role_id` mediumint(8) unsigned NOT NULL DEFAULT '0', 
    `auth_setting` tinyint(2) NOT NULL DEFAULT '0', 
    KEY `group_id` (`group_id`), 
    KEY `auth_opt_id` (`auth_option_id`), 
    KEY `auth_role_id` (`auth_role_id`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin; 
MySQL said: Documentation 

#1813 - Tablespace for table '`phpbb3`.`phpbb_acl_groups`' exists. Please DISCARD the tablespace before IMPORT. 

그런 다음 데이터베이스 phpbb3을 삭제하려고했지만 실패했습니다. 실제 데이터베이스 파일 (/usr/local/mysql/data/phpbb3)를 어디에

Error 
SQL query: 
DROP DATABASE `phpbb3` MySQL said: Documentation 

#1010 - Error dropping database (can't rmdir './phpbb3', errno: 66) 

마지막으로, 나는 발견했다. 나는 폴더 안을 들여다 보았다. 그리고 여전히 많은 파일들이있다. 모두 .ibd 개의 확장자로 끝나며 phpbb_acl_groups.ibd (147KB, 알파벳 순서의 첫 번째 문자)입니다.

여기 내 질문이 있습니다. 어떻게해야합니까? 수동으로 /usr/local/mysql/data/phpbb3 폴더를 삭제하고 최신 (2 개월 전) 데이터베이스 내보내기 파일을 가져와야합니까? 아니면 어떻게 든 /usr/local/mysql/data/phpbb3 폴더에 남은 것에서 데이터베이스를 복구 할 수 있습니까?

답변

0

이 기사를 발견했습니다.

mysqldump problems with restore error: 'Please DISCARD the tablespace before IMPORT'

이 폴더 /usr/local/mysql/data/phpbb3.ibd 파일과 .frm 파일을 포함해야한다고 말한다. 그러나 오류 Tablespace for table ' phpbb3 . phpbb_acl_groups ' exists..frm 파일이 모두 사라짐을 의미합니다. 참으로 그렇습니다.

따라서 폴더 /usr/local/mysql/data/phpbb3이 더 이상 사용되지 않는다고 판단되었습니다. 이제 모든 TimeMachine 백업이 사라 졌으므로 유일한 방법은 사용 가능한 데이터베이스 백업 파일에 의존하는 것입니다. 나는 파인더에서 폴더를 제거해야만했다. phpMyAdmin을 통해 새로운 빈 데이터베이스를 만든 다음 데이터베이스 백업을 가져 왔습니다. 이번에 오류가 없었으며 phpBB3 포럼에 로그온 할 수있었습니다. 새로운 데이터를 잃어 버렸지 만, 포럼 자체는 괜찮아 보입니다.

-3

쉽게 MS SQL 데이터베이스 복구 도구는 손상된 테이블, 트리거,보기 등에서 SQL 서버 데이터베이스 복구를 수행합니다.이 도구는 모든 MS SQL 버전 2000, 2005 & 2008과 호환됩니다. 자세한 내용 및 무료 다운로드는 http://recoverydatatools.com/sql-recovery.html을 클릭하십시오.