본문 바로가기
개발/SQL

[SQL]기초4. 명령어 알기! SQL명령어 총정리

by 알짭배기 2023. 8. 10.
반응형

앞전에 명령어가 중간중간에 나와서 많이 복잡하실까봐 정리만 간단히 하겠다!

 

데이터 베이스 접속 + 조회하기

 

A. 로그인시 데이터 베이스 지정하기

mysql –u계정 –p비밀번호 데이터베이스명

 

 

B. 로그인 후 데이터베이스 지정하기

 

use 데이터베이스명;

C.데이터베이스 및 테이블 리스트 보기

show databases;

D. 테이블 리스트 보기

 show tables;

 

E.테이블 구조 살펴보기

desc 데이블명;

 

 


데이터 베이스 생성 및 삭제 

 

 

A. 데이터베이스 생성

 

 

 create database 데이터베이스명 ;

B. 데이터베이스 삭제

 

drop database 데이터베이스명;

 

 

 

계정 확인하기

 

select 속성1, ... , 속성n from user;

 

계정 만들기

- 비밀번호 없는 계정

 CREATE USER ‘계정이름’@’localhost’;

- 비밀번호 가진 계정 

. CREATE USER ‘계정이름’@’localhost’ IDENTIFIED BY ‘비밀번호’;

 

접근 권한 부여 명령어

 

insert into db values ( ‘localhost’, ‘데이터베이스명’, ‘계정’, ‘y’, ‘y’, ... ‘y’ );
> 총 19개의 ‘y’ : 모든 데이터베이스에 대한 접근 권한을 부여한다.

grant all privileges on 데이터베이스명.테이블명 to 계정 with grant option;
> 특정 데이터베이스의 테이블에 대한 접근 권한을 부여한다.
> db 테이블만 변경된다.

ex)

test@localhost에게 box1 데이터베이스의 모든 테이블에 접근 할 수 있도록 권한 부여하기

select * from db;

grant all privileges on box1.* to 'test'@'localhost' with grant option;

> 여기서 * 표는 모든걸 선택한다고 생각하면 된다

 


 

 

변경된 설정 시스템에 적용하기

 

flush privilegs;

 

 

계정의 비밀번호 변경

update user set password=password( ‘새비밀번호’ ) where user=’계정‘;

 

계정 삭제하기

 

drop user ‘계정’@‘호스트’;
ex) drop user 'test1'@'localhost';

사용자 계정에서 root 계정과 같은 권한 설정하기

GRANT ALL PRIVILEGES ON *.* TO ‘계정’@‘호스트’ WITH GRANT OPTION;

ex)
select * from user;
GRANT ALL PRIVILEGES ON *.* TO ‘test’@‘localhost’ WITH GRANT OPTION;
flush privileges;

설정된 권한 조회하기

 

show grants for '계정'@'호스트';
ex)
show grants for 'test1'@'localhost';

설정된 권한 삭제하기

 

revoke all on 데이터베이스.테이블 from ‘계정’@‘호스트’;

 

 

문자셋 확인하기

 show variables like ‘%char%’;

 

 

문자셋 설정하기

 

set names 문자셋;
set 변수명 문자셋;

 

테이블 생성시 문자셋 지정하기

테이블의 문자셋을 ‘UTF8’ 로 지정한다.
charset=’UTF8’

스토어드 프로시저나 함수의 입력매개변수, 반환값의 문자셋을 지정한다.
character set euckr