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>
|
댓글을 작성하시려면 로그인이 필요합니다.
프로그램
태그 필터 (최대 3개)
전체
개발자
소스
기타
mysql
팁자료실
javascript
php
linux
flash
정규표현식
jquery
node.js
mobile
웹서버
os
프로그램
강좌
썸네일
이미지관련
도로명주소
그누보드5
기획자
견적서
계약서
기획서
마케팅
제안서
seo
통계
서식
통계자료
퍼블리셔
html
css
반응형
웹접근성
퍼블리싱
표준화
반응형웹
홈페이지기초
부트스트랩
angularjs
포럼
스크린리더
센스리더
개발자톡
개발자팁
퍼블리셔톡
퍼블리셔팁
기획자톡
기획자팁
프로그램강좌
퍼블리싱강좌