happy cat image

everdevel

우리 모두의 웹 입문, 에버디벨

UI 변경
오늘도 방문해 주셔서 감사합니다.
여러분이 매일 찾아주셔서 하루 5명 오는 사이트에서 1000명이 오는 사이트로 커갈 수 있었습니다.
드디어 2017년 8월 25일 에버디벨 책이 [웹코딩 시작하기]라는 제목으로 정말 출간 합니다.
정말 열심히 최선을 다해 많은 조사를 하며 작성했습니다. ^-^*
에버디벨은 제가 프로그래머가 아닌 시절 만든 사이트지만, [웹코딩 시작하기]는 저의 2년간의 프로그래머 경력을
살려서 꼭 알아야 한다고 생각하는 것들을 최대한 쉽게 설명하여 만들었습니다.
[웹코딩 시작하기]서평 이벤트도 시작했습니다.
[웹코딩 시작하기 서평 이벤트 많은 참여 부탁드립니다. ^-^* 눌러주세요.]

- 2017.8.5 에버디벨 운영자

사용자 계정 만들기

이번에는 MySQL의 계정을 생성하도록 하겠습니다. root가 아닌 자기만의 계정 만들기 입니다.

MySQL에 접속해 주세요. 그리고 다음의 명령문을 입력해 주세요 의미는 MySQL에 있는 생성된 모든 데이터베이스를 보는 명령문 입니다.

show databases;
mysql image

보이는 데이터베이스 목록 중 mysql 데이터베이스를 사용합니다 mysql 데이터베이스를 사용하려면 use라는 명령문을 사용합니다.

use 데이터베이스 이름

mysql 데이터베이스를 사용할 것 이기 때문에. 다음과 같이 입력해 주세요.

use mysql;

이제 선택한 mysql데이터베이스에 있는 테이블의 목록을 보겠습니다. 테이블의 목록을 보는 명령어는 show tables입니다.

show tables;
mysql image

출력된 테이블의 목록을 보면 user라는 테이블이 보입니다.

저 테이블이 새로운 계정을 만드는데 사용됩니다.

사용자 계정을 만들려면 반드시 root계정으로 mysql에 접속을 하셔야 합니다.!!

또한 데이터 베이스는 mysql 데이터베이스가 선택되어있어야 합니다.

만들어볼 계정은 david 비밀번호는 1234 입니다.
user테이블의 구조를 한번 보도록 하겠습니다. 구조를 보는 명령어는 desc 입니다.

desc 테이블명

그럼 user 테이블의 구조를 보는 명령어는 다음과 같겠죠?

desc user

mysql>desc user; 로 user 테이블의 구조를 확인해본다. desc 명령어로 테이블의 구조를 파악할수 있습니다.

그럼 총 39개의 필드가 존재 합니다. 계정 하나를 만들기 위해서 저 39개를 다 설정해 주어야 합니다.

mysql image

그럼 user테이블에 계정이 무엇이 있는지확인 해 보죠.

확인해 보기 위해서 user필드에 있는 레코드를 확인해 본다.

레코드를 확인하려면 select 명령어를 쓴다. 그리고 필드의 확인할 필드를 적어준다. 그럼 우리는

host,user,password 3개를 확인해보자 그럼 host ,user, password의 레코드를 볼 수 있다.

명령어

mysql>select host, user, password from user;
mysql image

다른 사람도 위와같은 방법으로 타인의 패스워드를 열람 가능 하기 때문에 비밀번호는 암호화 처리되어있다.

그럼 이제 계정을 만들어보자

만들어볼 계정은 david 비밀번호는 1234 이다.

user 테이블에 있는 39개의 필드를 모두 입력해야 한다.

먼저 mysql 데이터베이스를 선택해준다.

use mysql;

그후에 계정 정보 입력

insert into 테이블명 values

insert into user values ('localhost', 'david', password('1234'),
'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y',
'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y',
'','','','',0,0,0,0);

이로써 끝이다. 위의 작업은 사용자 접근권한을 부여한것이다.

desc 테이블명

혹시 저렇게 해서 되지 않는다면 desc user; 명령어를 사용하여 enum('N','Y')의 수등을 확인해서 수를 맞춰줘야 한다.

mysql image

그후에 변경된 user 테이블을 mysql 데이터베이스 시스템에 적용시키기 위하여 아래의 명령어를 입력한다.

flush privileges;

그리고 user 테이블의 host ,user ,password from user 를 사용해서 david계정이 등록되었는지 확인하겠습니다. (39개를 다보면 너무 많으니까 host 필드, user필드, password필드만 확인)

select host, user, password from user;
mysql image

위에 보이듯 등록이 되었다.!!

그럼 자신이 만든 계정으로 접속해 보자

exit 를 입력해서 빠져나와서

다시 접속을 해보자

mysql -udavid -p

그리고 david계정의 비밀번호인 1234를 입력합니다.

mysql image

그럼 이번엔 계정을 삭제해 보자

먼저 삭제를 해보기 위해서 삭제할 계정을 새로 만들자

위와같은 방법으로 만든다. 이번엔 honda라는 계정을 만든다.

insert into user values ('localhost', 'honda', password('1234'),
    'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y',
'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y',
'','','','',0,0,0,0);

위와 같이 입력한후

select host, user, password from user;

위 명령어를 입력합니다.

mysql image

위의 화면처럼 honda가 보인다.

그럼 이제 이 honda 계정을 삭제하자

먼저 mysql 데이터 베이스를 선택한다.

use mysql;

이제 honda 계정을 삭제하겠습니다.
아래의 명령문을 입력해주세요.

delete from user where user = 'honda';
flush privileges;
mysql image

위와같이 honda 계정은 삭제되었습니다.

이번엔 계정 패스워드를 변경해보자.

exit 로 mysql을 나간후 다시 루트 계정으로 접속한다. 루트 계정이 아니면 변경이 불가합니다.

mysql -uroot -proot
update user set password=password('123456') where user='root';

그리고 적용시키기 위하여

flush privileges;

를 입력합니다..

저위에 명령문에 root라고 작성했지만 자신이 변경하고 싶은 계정명을 적으면 된다.

그리고exit로 나가서 다시 로그인을 테스트 해보면 된다.

강좌로 돌아가기