게시판 복사 에러 (재)

게시판 복사 에러 (재)

QA

게시판 복사 에러 (재)

본문

CREATE TABLE g4_write_online_back ( wr_id int(11) NOT NULL auto_increment, wr_num int(11) DEFAULT '0' NOT NULL, wr_reply varchar(10) NOT NULL, wr_parent int(11) DEFAULT '0' NOT NULL, wr_is_comment tinyint(4) DEFAULT '0' NOT NULL, wr_comment int(11) DEFAULT '0' NOT NULL, wr_comment_reply varchar(5) NOT NULL, ca_name varchar(255) NOT NULL, wr_option set('html1','html2','secret','mail') NOT NULL, wr_subject varchar(255) NOT NULL, wr_content text NOT NULL, wr_link1 text NOT NULL, wr_link2 text NOT NULL, wr_link1_hit int(11) DEFAULT '0' NOT NULL, wr_link2_hit int(11) DEFAULT '0' NOT NULL, wr_trackback varchar(255) NOT NULL, wr_hit int(11) DEFAULT '0' NOT NULL, wr_good int(11) DEFAULT '0' NOT NULL, wr_nogood int(11) DEFAULT '0' NOT NULL, mb_id varchar(255) NOT NULL, wr_password varchar(255) NOT NULL, wr_name varchar(255) NOT NULL, wr_email varchar(255) NOT NULL, wr_homepage varchar(255) NOT NULL, wr_datetime datetime DEFAULT '0000-00-00 00:00:00' NOT NULL, wr_last varchar(19) NOT NULL, wr_ip varchar(255) NOT NULL, wr_1 varchar(255) NOT NULL, wr_2 varchar(255) NOT NULL, wr_3 varchar(255) NOT NULL, wr_4 varchar(255) NOT NULL, wr_5 varchar(255) NOT NULL, wr_6 varchar(255) NOT NULL, wr_7 varchar(255) NOT NULL, wr_8 varchar(255) NOT NULL, wr_9 varchar(255) NOT NULL, wr_10 varchar(255) NOT NULL, PRIMARY KEY (wr_id), KEY wr_num_reply_parent (wr_num, wr_reply, wr_parent), KEY wr_is_comment (wr_is_comment, wr_id) ) DEFAULT CHARSET=utf8

1874 : InnoDB is in read only mode.

error file : /adm/board_copy_update.php

 

이렇게 뜹니다.

mysql 서버에서 무언가 바꿔줘야하나요?

같은 서버에 같은 mysql을 쓰고 있는데도 그누5 복사는 잘되는데 4는 안되네요..

---------------------------

mysql 에서 직접 create 문에 이상이 있는건지.. 

이렇게하는건 되네요..

---------------------------

board_copy_update.php 에서 sql_query($sql, false);로 바꾼건 의미가 없네요.. 테이블이 안만들어집니다.

 

 

이 질문에 댓글 쓰기 :

답변 1

common.lib.php get_table_defile 함수 내 코드 변경으로 해결하였습니다.

// For MySQL < 3.23.20
    $schema_create .= 'CREATE TABLE ' . $table . ' (' . $crlf;

    $sql = 'SHOW FIELDS FROM ' . $table;
    $result = sql_query($sql);
    while ($row = sql_fetch_array($result))
    {
        $schema_create .= '    ' . $row['Field'] . ' ' . $row['Type'];
        if (isset($row['Default']) && $row['Default'] != '')
        {
            $schema_create .= ' DEFAULT \'' . $row['Default'] . '\'';
        }
        if ($row['Null'] != 'YES')
        {
            $schema_create .= ' NOT NULL';
        }
        if ($row['Extra'] != '')
        {
            $schema_create .= ' ' . $row['Extra'];
        }
        $schema_create     .= ',' . $crlf;
    } // end while
    sql_free_result($result);

    $schema_create = preg_replace('/,' . $crlf . '$/', '', $schema_create);

    $sql = 'SHOW KEYS FROM ' . $table;
    $result = sql_query($sql);
    while ($row = sql_fetch_array($result))
    {
        $kname    = $row['Key_name'];
        $comment  = (isset($row['Comment'])) ? $row['Comment'] : '';
        $sub_part = (isset($row['Sub_part'])) ? $row['Sub_part'] : '';

        if ($kname != 'PRIMARY' && $row['Non_unique'] == 0) {
            $kname = "UNIQUE|$kname";
        }
        if ($comment == 'FULLTEXT') {
            $kname = 'FULLTEXT|$kname';
        }
        if (!isset($index[$kname])) {
            $index[$kname] = array();
        }
        if ($sub_part > 1) {
            $index[$kname][] = $row['Column_name'] . '(' . $sub_part . ')';
        } else {
            $index[$kname][] = $row['Column_name'];
        }
    } // end while
    sql_free_result($result);

    while (list($x, $columns) = @each($index)) {
        $schema_create     .= ',' . $crlf;
        if ($x == 'PRIMARY') {
            $schema_create .= '    PRIMARY KEY (';
        } else if (substr($x, 0, 6) == 'UNIQUE') {
            $schema_create .= '    UNIQUE ' . substr($x, 7) . ' (';
        } else if (substr($x, 0, 8) == 'FULLTEXT') {
            $schema_create .= '    FULLTEXT ' . substr($x, 9) . ' (';
        } else {
            $schema_create .= '    KEY ' . $x . ' (';
        }
        $schema_create     .= implode($columns, ', ') . ')';
    } // end while

    $schema_create .= $crlf . ') ENGINE=MyISAM DEFAULT CHARSET=utf8';

    return $schema_create;

답변을 작성하시기 전에 로그인 해주세요.
전체 10,633
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT