묻고답하기
갑자기 글 수정이 안 되네요.
2013.11.29 19:32
수정 버튼을 눌러서 게시글을 수정하고 업데이트 버튼을 누르면 웹브라우저가 하얀화면으로 바뀔뿐 실제 글은 수정되지 않습니다. 관리자 계정으로는 수정이 가능하고 게시글만 수정이 안 될뿐 댓글은 수정이 가능합니다.
XE 버전은 1.7.3.6으로 제일 최신 버전입니다. 관리자 계정으로 캐시파일 재생성과 세션 정리도 다 해봤습니다.
수정을 시도할 때마다 apache2 로그에 에러로그가 남는데 로그는 아래와 같습니다.
[Fri Nov 29 19:23:32 2013] [error] [client 183.106.174.99] PHP Warning: implode(): Invalid arguments passed in /var/www/xe/classes/db/queryparts/Query.class.php on line 404, referer: http://www.burgerburger.kr/index.php?mid=browserquest&act=dispBoardWrite&entry=document_srl/297083/page/1
[Fri Nov 29 19:23:32 2013] [error] [client 183.106.174.99] PHP Catchable fatal error: Object of class Object could not be converted to string in /var/www/xe/classes/db/DBMysql.class.php on line 598, referer: http://www.burgerburger.kr/index.php?mid=browserquest&act=dispBoardWrite&entry=document_srl/297083/page/1
댓글 2
-
explode
2013.11.30 01:13
-
RedPain3
2013.11.30 17:58
데이터베이스가 문제인가 해서 myisamchk -r로 전부 체크/복구했더니 mysql 데몬이 아에 시작도 안 더라고요. mysql 에러 로그는 아래와 같습니다.
131130 15:58:48 [Note] Plugin 'FEDERATED' is disabled.
131130 15:58:48 InnoDB: Initializing buffer pool, size = 8.0M
131130 15:58:48 InnoDB: Completed initialization of buffer pool
InnoDB: Error: trying to access page number 271558706 in space 0,
InnoDB: space name ./ibdata1,
InnoDB: which is outside the tablespace bounds.
InnoDB: Byte offset 0, len 16384, i/o type 10.
InnoDB: If you get this error at mysqld startup, please check that
InnoDB: your my.cnf matches the ibdata files that you have in the
InnoDB: MySQL server.
131130 15:58:48 InnoDB: Assertion failure in thread 140552901982016 in file ../../../storage/innobase/fil/fil0fil.c line 4135
InnoDB: We intentionally generate a memory trap.
InnoDB: Submit a detailed bug report to http://bugs.mysql.com.
InnoDB: If you get repeated assertion failures or crashes, even
InnoDB: immediately after the mysqld startup, there may be
InnoDB: corruption in the InnoDB tablespace. Please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.1/en/forcing-innodb-recovery.html
InnoDB: about forcing recovery.
06:58:48 UTC - mysqld got signal 6 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
We will try our best to scrape up some info that will hopefully help
diagnose the problem, but since we have already crashed,
something is definitely wrong and this may fail.
key_buffer_size=16777216
read_buffer_size=131072
max_used_connections=0
max_threads=151
thread_count=0
connection_count=0
It is possible that mysqld could use up to
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 346531 K bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
Thread pointer: 0x0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 0 thread_stack 0x30000
/usr/sbin/mysqld(my_print_stacktrace+0x26) [0x7fd506334926]
/usr/sbin/mysqld(handle_fatal_signal+0x473) [0x7fd506132f23]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x10060) [0x7fd50589e060]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x35) [0x7fd5047383e5]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x17b) [0x7fd50473bb4b]
/usr/sbin/mysqld(fil_io+0x3cc) [0x7fd506222cbc]
/usr/sbin/mysqld(+0x538715) [0x7fd506206715]
/usr/sbin/mysqld(buf_read_page+0x225) [0x7fd506206a75]
/usr/sbin/mysqld(buf_page_get_gen+0x147) [0x7fd5061fd6e7]
/usr/sbin/mysqld(trx_undo_lists_init+0x412) [0x7fd5062b16f2]
/usr/sbin/mysqld(+0x5d9f0b) [0x7fd5062a7f0b]
/usr/sbin/mysqld(trx_rseg_list_and_array_init+0xa7) [0x7fd5062a8427]
/usr/sbin/mysqld(trx_sys_init_at_db_start+0x172) [0x7fd5062a9ba2]
/usr/sbin/mysqld(innobase_start_or_create_for_mysql+0x12a5) [0x7fd506296f55]
/usr/sbin/mysqld(+0x510d8b) [0x7fd5061ded8b]
/usr/sbin/mysqld(ha_initialize_handlerton(st_plugin_int*)+0x31) [0x7fd506123c01]
/usr/sbin/mysqld(+0x4e88a6) [0x7fd5061b68a6]
/usr/sbin/mysqld(plugin_init(int*, char**, int)+0x638) [0x7fd5061b9a58]
/usr/sbin/mysqld(+0x35c7de) [0x7fd50602a7de]
/usr/sbin/mysqld(main+0x2fe) [0x7fd50602c2be]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xed) [0x7fd50472330d]
/usr/sbin/mysqld(+0x28b6d9) [0x7fd505f596d9]The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html containsinformation that should help you find out what is causing the crash.검색해보니 ibdata1 파일을 지우면 된다고 해서 지웠더니 다시 mysql 데몬은 작동이 되는데 여전히 게시글 수정은 안 되네요...죄송하지만, 뭘 더 해봐야할까요....?
Phpmyadmin등으로 접속하여 깨진 DB까 있으면 복구 해보시기 바랍니다.
@RedPain3