사이트 내 전체검색
PHP
[MySQL] 원격접속사용하기 (2007/11/03 수정)
로빈아빠
https://cmd.kr/php/702 URL이 복사되었습니다.

본문

DB서버가 분리되어 운영될 때 원격의 호스트가 해당 디비서버에 접속하기 위한 설정방법이다.

+ 원격의 디비에 접속하기위한 Host1, Host2, Host3가 있고 DB서버인 Host4가 있다고 가정했을 때..
원격디비서버에서 User테이블에 원격접속을 허용할 호스트를 입력해주고 DB 테이블에서 사용자에게 지정된 모든 호스트를 지정해주거나 원하는 호스트를 지정해 주면 됩니다.

+ DB 서버설정하기.

sueni@bbung ...]# mysql -uroot -p mysql
password: *********

# manpage라는 하나의 사용자를 등록 후 해당사용자에 대한 정보로 원격에서 접속하도록 설정해
보겠다.

먼저 DB를 하나 만들도록 합니다.

mysql> create database manpage;

mysql> insert into user (host,user,password) values ('localhost','manpage',password('manpage'));
mysql> insert into user (host,user,password) values ('Host1','manpage',password('manpage1'));

mysql> insert into user (host,user,password) values ('Host2','manpage',password('manpage2'));

mysql> insert into user (host,user,password) values ('Host3','manpage',password('manpage3'));

# 위에서 패스워드에 1,2,3이 붙은것은 하나의 사용자에 대해 호스트별로 패스워드를 다르게 줄수 있
다는것을 보여주는 것입니다.

# DB 테이블 정보입력
mysql> insert into db values
('localhost','manpage','manpage','y','y','y','y','y','y','y','y','y','y');

# 해당사용자의 user테이블에 지정된 모든 원격지 호스트에 대한 접속을 허용하도록 설정한다.

mysql> update db set host='%' where db='manpage';
mysql> flush privileges;

# manpage 사용자에게 지정된 호스트를 보도록 하자.
mysql> select host,user from user where user='manpage';
+------------------------+---------+
| host                  |  user  |
+------------------------+---------+
| localhost              | manpage |         
| Host1                  | manpage |         
| Host2                  | manpage |         
| Host3                  | manpage |         
+------------------------+---------+

# Host1,2,3에 대해 각각의 사용자 홈계정에 다음과 같은 index.php파일을 만들어서 테스트해보자.

<?
$db_conn = mysql_connect('원격DB호스트', 'User', 'Passwd');
mysql_select_db('DB이름', '$db_conn');
if (!$db_conn) { echo "디비연결실패"; }
else { echo "디비연결성공"; }
?>


위와 같은 파일을 만들어 테스트해보면 각각의 호스트마다 서로다른 패스워드로 원격접속이 가능함을 볼수 있다.

원격디비접속은 생각외로 쉽다. :)



자료출처
http://www.superuser.co.kr/open_lecture/manpage/page05.htm

댓글목록

등록된 댓글이 없습니다.

PHP
871 (6/18P)

Search

Copyright © Cmd 명령어 3.133.152.189