MySQL 3.23.x에서 4.0.x로 업그레이드시 주의사항 정보
MySQL MySQL 3.23.x에서 4.0.x로 업그레이드시 주의사항
본문
MySQL 4.0.2 버전후 MySQL user 테이블등의 필드가 많이 추가되었다.
4.0.2 이전의 시스템에서 DB를 덤프 후 MySQL만 업그레이드 할경우 일반 사용자들도
'show databases'로 시스템의 모든 데이터베이스를 열람할 수 있게된다. 보안상 좋
지 않으므로 자신의 데이터베이스만 열람할 수 있도록 설정하는게 좋다.
이전에는 --safe-show-databases 를 이용했지만 4.0.2 버전이후로는 권한개념으로
사용자 추가할때 GRANT 명령을 사용해야한다.
아래와 같이 user 테이블에 당당히 권한 필드로 승격(?)되었다.
mysql> desc user;
+-----------------------+-------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------------+-------------------+------+-----+---------+-------+
...
| Show_db_priv | enum('N','Y') | | | N | |
| Create_tmp_table_priv | enum('N','Y') | | | N | |
| Lock_tables_priv | enum('N','Y') | | | N | |
...
+-----------------------+-------------------+------+-----+---------+-------+
31 rows in set (0.00 sec)
처음부터 4.0.2이전의 버전을 사용할 경우문제가 없지만 이전의 버전을 사용할 경우
테이블 변경과 몇가지 설정을 해야한다.
------------------------------------------------------------------------------
4.0.2이전 버전에서 업그래이드 하기
1. MySQL 서버는 동작하고 있어야한다.
2. $PREFIX/mysql/bin 디렉토리에서 'mysql_fix_privilege_tables'명령을 아래와
같이 실행한다.
# $PREFIX/mysql/bin/mysql_fix_privilege_tables [ROOT-PASSWORD]
MySQL root 패스워드를 인자로 주고 실행하면 테이블이 변경된다.
3. 테이블이 변경되면 Show_db_priv 필드는 기본으로 'N'이 설정되지만 'Create_tmp_table_priv' 필드와 'Lock_tables_priv'필드는 'Y'로 설정되므로 각
사용자의 설정값을 'N'으로 변경해준다. db테이블의 Lock_tables_priv 기본값은 'Y'
로 변경한다.
4. mysql> flush
... 관련문서
http://mysql.progen.com.tr/doc/en/Upgrading-from-3.23.html
출처 : http://hwadong.pe.kr/v5/pinkboard/view.php?table=mytip&RNUM=66&=66
펌 : http://bux.pe.kr/xy_bb/board.php?id=naver&category=5&board_sec=0&page=1&mode=view&no=110<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:27:00 MySQL에서 이동 됨]</div>
4.0.2 이전의 시스템에서 DB를 덤프 후 MySQL만 업그레이드 할경우 일반 사용자들도
'show databases'로 시스템의 모든 데이터베이스를 열람할 수 있게된다. 보안상 좋
지 않으므로 자신의 데이터베이스만 열람할 수 있도록 설정하는게 좋다.
이전에는 --safe-show-databases 를 이용했지만 4.0.2 버전이후로는 권한개념으로
사용자 추가할때 GRANT 명령을 사용해야한다.
아래와 같이 user 테이블에 당당히 권한 필드로 승격(?)되었다.
mysql> desc user;
+-----------------------+-------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------------+-------------------+------+-----+---------+-------+
...
| Show_db_priv | enum('N','Y') | | | N | |
| Create_tmp_table_priv | enum('N','Y') | | | N | |
| Lock_tables_priv | enum('N','Y') | | | N | |
...
+-----------------------+-------------------+------+-----+---------+-------+
31 rows in set (0.00 sec)
처음부터 4.0.2이전의 버전을 사용할 경우문제가 없지만 이전의 버전을 사용할 경우
테이블 변경과 몇가지 설정을 해야한다.
------------------------------------------------------------------------------
4.0.2이전 버전에서 업그래이드 하기
1. MySQL 서버는 동작하고 있어야한다.
2. $PREFIX/mysql/bin 디렉토리에서 'mysql_fix_privilege_tables'명령을 아래와
같이 실행한다.
# $PREFIX/mysql/bin/mysql_fix_privilege_tables [ROOT-PASSWORD]
MySQL root 패스워드를 인자로 주고 실행하면 테이블이 변경된다.
3. 테이블이 변경되면 Show_db_priv 필드는 기본으로 'N'이 설정되지만 'Create_tmp_table_priv' 필드와 'Lock_tables_priv'필드는 'Y'로 설정되므로 각
사용자의 설정값을 'N'으로 변경해준다. db테이블의 Lock_tables_priv 기본값은 'Y'
로 변경한다.
4. mysql> flush
... 관련문서
http://mysql.progen.com.tr/doc/en/Upgrading-from-3.23.html
출처 : http://hwadong.pe.kr/v5/pinkboard/view.php?table=mytip&RNUM=66&=66
펌 : http://bux.pe.kr/xy_bb/board.php?id=naver&category=5&board_sec=0&page=1&mode=view&no=110<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:27:00 MySQL에서 이동 됨]</div>
추천
0
0
댓글 0개