skip-name-
resolve는 client 에서 server로 접속시에 DNS Lookup 과정을 생략해 줍니다. localhost 로 접속하는
경우는 문제가 없지만 IP 로 접속하는 환경에서는 DNS 서버가 느리거나 아님 장애 발생시에 해당 옵션을 설정해 주므로써 DB
접속시에 문제점을 해결하실 수 있습니다.
[root@smson root]# vi /etc/my.cnf
# The MySQL server
[mysqld]
skip-external-locking
skip-host-cache
skip-locking
skip-name-resolve
back_log = 768
basedir = /opt/mysql/
connect_timeout = 30
아래와 같이 show processlist 명령을 수행해서 unauthenticated user 가 표시되면
DB 연결 속도가 떨어지고, 웹페이지 접속이 느려진다.
mysql> show processlist;
| 3436942 | unauthenticated user | 192.168.0.52:49607 || Connect|| login |
| 3436943 | unauthenticated user | 192.168.0.52:49608 || Connect|| login
1. 해결방법
mysql 시작시 --skip-name-resolve 옵션을 줘서 실행한다.
또는 /etc/hosts 파일에 접속 IP와 호스트명을 넣어준다.
2. 원인?
mysql에서 접속시 ip에 대한 resolving(역질의)를 한다. 하지만, 대부분의 IP는 등록되어 있지 않으며,
DNS가 느리다면 이 부분은 더욱 심각한 속도 문제가 발생한다. mysql 4.0.XX에서는 보이자
않았던 문젠데... 4.1.X 부터는 문제가 보이기 시작했다. 위 해결법들은.
역질의를 하지 않는 방법과, DNS가 아닌 /etc/hosts파일에서 질의 하게 하는 방법이다.
둘 중 빠른 방법은 역질의하지 않게 하는것이며, DB를 잠시라도 정지하기 힘든 시스템에서는
두번째 방법을 사용하여 한가할 때 전자의 방법으로 바꾸는 것이 좋을 것으로 판단된다.
[MYSQL 접속함]
[root@DWSM logs]# mysql --user=root -p.digital
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 1 to server version: 4.1.11-log
mysql> use mysql;
Database changed
mysql> select * from user where User ='ering'; <<- 사용자 확인한다.
+-----------+-------+-------------------------------------------+-------------+----------
|
Host | User | Password |
Select_priv | Insert_priv | Update_priv | Delete_priv | Create_priv |
Drop_priv | Reload_pr
iv |
Shutdown_priv | Process_priv | File_priv | Grant_priv | References_priv |
Index_priv | Alter_priv | Show_db_priv | Super_priv |
Create_tmp_table_priv |
Lock_tables_priv
| Execute_priv | Repl_slave_priv | Repl_client_priv | ssl_type |
ssl_cipher | x509_issuer | x509_subject | max_questions | max_updates |
max
_connections |
+-----------+-------+-------------------------------------------+-------------+----------
| localhost
| ering | *A3279FE22E79F49A496CBFB6A9E9D30CD68E4052 | Y |
Y | Y | Y | Y | Y | Y
| Y | Y | Y | Y |
N | N | N | N | N |
N |
N
| N | N | N |
| | | | 0 | 0 |
0 |
1 row in set (0.00 sec)
mysql> INSERT INTO user VALUES ('%','ering', password('.digital'),'Y','Y','Y','Y','Y','Y',
-> 'Y','Y','Y','Y','Y','N','N','N','N','N','N','N','N','N','N','','','','',0,0,0);
Query OK, 1 row affected (0.00 sec)
mysql> commit;
Query OK, 0 rows affected (0.00 sec)
mysql> quit
Bye
[root@DWSM logs]# /etc/init.d/mysql restart
Shutting down MySQL. SUCCESS!
Starting MySQL SUCCESS!
제목 | 날짜 | ||
---|---|---|---|
215 | [리더] 리더의 조건 [4] | 5258 | 2014/02/17 |
214 | [모바일] 안드로이드 메모 어플 추천 | 4796 | 2014/04/30 |
213 | [생활] 도서관용 저소음(무소음) 마우스 만들기 대작전~!!!! [출처] 도서관용 저소음(무소음) 마우스 만들기 대작전~!!!!|작성자 양군 | 12430 | 2014/07/16 |
212 | [엑셀] 기본 서식 파일 Normal.dotm이(가) 변경되었습니다. 변경 사항을 저장하시겠습니까? [출처] 기본 서식 파일 Normal.dotm이(가) 변경되었습니다. 변경 사항을 저장하시겠습니까?|작성자 키롱 | 7908 | 2014/08/03 |
211 | [GitHub] 로컬 저장소와 깃허브 저장소 연결하기 | 3130 | 2014/08/04 |
210 | [GitHub] 처음으로 깃/깃허브 설정하기 | 3575 | 2014/08/04 |
209 | [GitHub] Git 온라인 저장소 만들기 | 5441 | 2014/08/04 |
208 | [GitHub] Git 을 사용해봅시다! (1부) [출처] Git 을 사용해봅시다! (1부) | 3510 | 2014/08/04 |
207 | [GitHub] 깃허브(GitHub) 시작하기 (by 이온디) | 3860 | 2014/08/23 |
206 | [윈도우] WindowsUpdate_80070011 오류 해결법 | 3910 | 2014/09/03 |
205 | [엑셀] 엑셀 시트간 입력값 비교하는 방법 | 3185 | 2014/11/17 |
204 | [데스크탑/액세서리] 네이버 캡쳐 Strokesplus 를 이용하기 | 3056 | 2014/11/21 |