MySQL cmd 명령어 - MySQL cmd myeonglyeong-eo

mysql 기본 명령어

이번에는 리눅스에서 MYSQL 명령어를 포스팅하겠습니다.

데이터베이스 언어의 3가지 종류와 형태

1. DDL(Data Define Language) : 데이터베이스 관리(crete, alter, drop)

2. DML(Data Management Language) : 데이터베이스 데이터관리(select, insert, update, delete)

3. DCL(Data Control Language) : 데이터베이스 권한 관리(grant, revoke)

리눅스에서 MYSQL 명령어를 사용하기전에 MYSQL이 실행중인지 확인한 후 실행중이 아니라면 실행 시켜 줍니다.

MySQL 실행하기

[root@web ~]# /etc/init.d/mysqld start

MySQL 실행 확인

[root@web ~]# ps -ef | grep mysql

MySQL Console 접속 방법

[root@web ~]# mysql -u root -p Enter password:

MySQL 명령어 사용시 호스트가 localhost일 경우 생략 가능하고 비밀번호가 없을 경우 생략이 가능합니다.

-p 옵션이 붙어 있을 경우 명령어 입력시 비밀번호를 물어봅니다.

비밀번호 변경

[root@web ~]# mysqladmin -u root password 비밀번호

현재 사용가능한 데이터베이스의 목록을 출력

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

데이터베이스 생성

mysql> create database mysql_DB; Query OK, 1 row affected (0.06 sec)

create 명령어로 mysql_DB를 생성하였습니다.

root가 아닌 유저가 DB를 생성하려면 DDL 명령어에 대한 권한이 있어야 합니다.

데이터베이스 사용

mysql> use mysqlDB;

생성된 데이터베이스 mysqlDB 사용하려면 use를 입력하여 mysqlDB를 선택하여 줍니다.

테이블 생성

mysql> create table test_table( -> -> sno int not null, -> -> name char(10), -> -> det char(20), -> -> addr char(80), -> -> tel char(20), -> -> PRIMARY KEY(sno) -> -> ); Query OK, 0 rows affected (0.00 sec)

데이터베이스 테이블 출력

mysql> show tables; +--------------------+ | Tables_in_mysql_DB | +--------------------+ | test_table | +--------------------+ 1 row in set (0.00 sec)

테이블 출력 명령어를 출력하면 위에서 생성한 test_table 생성된것을 확인할수 있습니다.

데이터베이스 테이블 구조 확인

mysql> desc test_table; +-------+----------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+----------+------+-----+---------+-------+ | sno | int(11) | NO | PRI | NULL | | | name | char(10) | YES | | NULL | | | det | char(20) | YES | | NULL | | | addr | char(80) | YES | | NULL | | | tel | char(20) | YES | | NULL | | +-------+----------+------+-----+---------+-------+ 5 rows in set (0.00 sec

desc 명령어로 생성한 테이블의 출력하면 위에서 생성한 테이블 내용을 볼수 있습니다.

목차

mysql을 워크벤치가 아닌 콘솔(리눅스)로서 사용할때 명령어 모음이다.

이걸 CLI 명령어라고도 한다.

MYSQL 서버 명령어

mysql서버 잘 돌고있는지 확인

$ service mysql status

mysql서버 구동

$ service mysql start

mysql 재구동

$ service mysql restart

mysql 명령 프롬프트 나가기

$ exit

MYSQL 사용자 명령어

root 권한으로 mysql 콘솔 실행

$ mysql -u root -p

비밀번호 변경

$ mysql admin –u root –p password

현재 등록된 사용자 조회

mysql> use mysql; mysql> select user, host from user;

사용자 추가

/* CREATE USER '계정 아이디'@'접속위치(localhost)' identified by '패스워드'; */ mysql> create user userid@localhost identified by 'password'; mysql> create user 'userid'@'%' identified by 'password';
%는 wildcard의 의미로서 any host로부터의 접속을 허용한다는 뜻이다.

사용자 삭제

mysql> drop user 'userid';

DB에 대한 사용자 권한 부여 (모든 권한 부여)

/* GRANT ALL PRIVILEGES ON *.* TO '계정 아이디'@'접속 위치' WITH GRANT OPTION; */ mysql> GRANT ALL PRIVILEGES ON *.* TO '계정 아이디'@'localhost' WITH GRANT OPTION; mysql> flush privileges;

DB에 대한 사용자 권한 부여 (특정 권한 부여)

mysql> grant select, insert, update on dbname.table to userid@host identified by 'password'; mysql> flush privileges;
dbname.table 대신에 dbname.*을 지정하면 db의 모든 테이블에 대한 권한 설정.

권한 삭제

mysql> revoke all on dbname.table from userid@host; mysql> flush privileges;

권한 조회

/* SHOW GRANTS FOR '계정 아이디'@'접속 위치'; */ mysql> show grants for userid@host;

MYSQL 쿼리문

database 조회

mysql> show databases;

database 선택

mysql> use database;

테이블 구조 확인

mysql> explain 테이블명;

Reference

//chobopark.tistory.com/66

잘못된 내용이 있으면 댓글로 피드백 부탁드립니다 :)

이 글이 좋으셨다면 구독 & 좋아요

여러분의 구독과 좋아요는
저자에게 큰 힘이 됩니다.

Toplist

최신 우편물

태그