웹마스터 팁

MySQL 사용자 계정주기

2002.03.12 21:44

pai

편의상 존칭은 생략합니다.

MySQL을 처음 설치하고 나서 먼저 root(관리자)는 비번을 설정해야 한다.
그런지 않은경우 일반사용자(계정을 받은자)가 MySQL에 접속을 하게되면 비번없이 접속을 할수 있게된다...그러면 큰일이다...^^

[shell]# /usr/local/mysql/bin/mysql -u root mysql <Enter>

mysql> update user <Enter>
-> set password = password('비번')  <Enter>
-> where user = 'root'; <Enter>
Query OK, 2 row affected (0.00 sec)

또는 한줄로...

mysql> update user set password=password('비번') where user='root';
Query OK, 2 row affected (0.00 sec)

이렇게 하고 나서...

[shell]# /usr/local/mysql/bin/mysqladmin -u root -p reload [Enter]

로 MySQL 을 재가동 시켜주면 일반사용자가 감히 접근을 못하게 된다.

이제 사용자에게 디비를 분양할 준비가 되었다. 먼저 사용자가 입주할 디비를 만들 차례이다.

[설정]
사용자 아디 : pai
사용자 비번 : pai2002
사용자 디비이름 : paidb

mysql> create database paidb;
Query OK, 1 row affected (0.01 sec)

확인을 해보자!

mysql> show databases;
+-----------+
| Database |
+-----------+
| mysql  |
| test      |
| paidb   |
+-----------+
3 rows in set (0.00 sec)

리눅스의 경우 디폴트로 설치한 경우 /usr/local/mysql/var/paidb 이런 식으로 디렉토리가 생성되는것 같다. 이 디렉토리가 데이타 베이스 공간으로 이용될 곳이다.

이러면 다 되는가? 아니다.
paidb 라는 집만 지었을뿐 문패도 없고 대문열쇠도 없는 집만 있는 셈이다.

user용 DB와 mysql 관리테이블과의 Link, 사용자등록 및 각각의 권한설정이 이루어져야 한다. 이것이 바로 실제적인 분양이 되는 셈이다.

자 이제 생성된 데이타베이스와 데이타베이스 관리및 엑세스 권한등을 정의하고 있는 mysql 상의 db, user 테이블에 방금 생성된 paidb Database 내용을 정의 하자.

mysql> insert into db [Enter]
-> values ('%','paidb','pai', [Enter]
-> 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y') [Enter]
-> ; [Enter]
Query OK, 1 row affected (0.01 sec)

위 4줄을 모두 한줄로 붙여서 써도 결과는 마찬가지이지만 보기좋게~ ^^

자 이제 paidb 이라는 db 사용자에 대한 등록을 할 차례이다.

mysql> insert into user [Enter]
-> (host,user,password) [Enter]
-> values ('localhost','pai',password('pai2002')) [Enter]
-> ; [Enter]
Query OK, 1 row affected (0.00 sec)

db 테이블과 user 테이블에 사용자를 등록시키는 방법이 조금 차이가 나는걸 볼수가 있다. root의 수고를 최소화 하기위해 기본설정값(N)을 빼고 설정을 하게 되면 아무래도 수월하기때문이다. 자세한건 자세한 문건을 보길...ㅠㅠ
___________________________________________________________________
중요한 tip......
-------------------------------------------------------------------
user 테이블에 사용자를 insert, update 한 경우 MySQL을 꼭 재기동시켜 주어야만 한다. 명령은 다음과 같다.
[shell]# /usr/local/mysql/bin/myaqladmin -u root -p reload
이 명령은 user 테이블에서 사용자 정보를 다시 읽어서 MySQL 을 다시 실행시켜준다.
-------------------------------------------------------------------

위의 과정을 거치게 되면 비로소 pai라는 이용자는 텔넷접속후에
[shell]$ /usr/local/mysql/bin/mysql -u pai -p paidb [Enter]
라는 명령으로 자신의 MySQL 디비에 접속하여 작업을 할수 있게된다.

끝~
제목 글쓴이 날짜
하드디스크의 모든성능을 써버리자! [4] 임현 2002.06.14
BIND - DoS Vulnerability [1] 야쿠자 2002.06.07
프비에서 apache2 쓰실때 참고하세요. [2] _a_SPD_a_ 2002.05.29
가상호스트 i- 님의 강의에 덧붙여서 이종렬 2002.05.24
웹호스팅 서버세팅 쉽게하기 팁[윈도우 메모장 이용] [3] 김영남 2002.05.14
텔넷에서 다른 계정사용자의 홈디렉토리 접근 막기 [4] 김영남 2002.05.11
Redhat 7.3 나왔습니다. [20] 야쿠자 2002.05.10
[알아서 나쁠것없는 10원짜리 팁!] 수십 수백명사용자의 일괄생성 방법! [6] 임현 2002.05.09
Redhat7.2에서 apache,mysql,php,zend,gd,freetype,giflib,jpeglib,zlib 설치하기 [14] file DeX™ 2002.05.04
개인서버구동시 서버커널 메모리로....(렉생기시는분들 강추) [2] 홈1004 2002.05.03
DB 디자인 툴 소개 [2] 석이 2002.04.21
Apache2.0.35 + php4.3.0-devel 설치하기;; [15] Cksoft 2002.04.08
[mysql을 하자 3] DB서버 원격 사용자,DB 만들어 사용하기 [5] 비바람 2002.03.13
[mysql을 하자 2] (pai님도 하신^^)사용자와 db를 맹글자 [4] 비바람 2002.03.13
[mysql을 하자 1] mysql 종료와 재부팅 비바람 2002.03.13
MySQL 사용자 계정주기 [10] pai 2002.03.12
리눅스 아주 간단한 사용자 계정 주기-_- [7] i- 2002.03.12
아래 pai님 도메인셋팅 강좌 세부파일들 예제 :) [3] 아르체 2002.03.06
근사모의 APM_steup3설치 법 [5] 뽀유★ 2002.03.01
리눅스서버 : 도메인 가진 사용자 추가하기 (텔넷,FTP,이메일 사용) [5] pai 2002.02.27