Mysql DB 관련 기본 쿼리

테이블 내 기본 조회
   SELECT 컬럼명, 집계함수 as 별명   ----------------- (5)
   FROM 테이블명                     ----------------- (1)
   WHERE 테이블 조건                 ----------------- (2)
   GROUP BY 컬럼명                   ----------------- (3)
   HAVING 그룹 조건                  ----------------- (4)
   ORDER BY 컬럼명                   ----------------- (6)
   FROM : SQL은 구문이 들어오면 테이블을 가장 먼저 확인합니다. 테이블이 없는데 다른 것들을 먼저 조회하면 헛수고니까요!
   WHERE : 테이블명을 확인했으니, 테이블에서 주어진 조건에 맞는 데이터들을 추출해줍니다.
   GROUP BY : 조건에 맞는 데이터가 추출되었으니, 공통적인 데이터들끼리 묶어 그룹을 만들어줍니다.
   HAVING : 공통적인 데이터들이 묶여진 그룹 중, 주어진 주건에 맞는 그룹들을 추출해줍니다.
   SELECT : 최종적으로 추출된 데이터들을 (또 함수로 묶어 계산결과를) 조회합니다.
   ORDER BY : 추출된 데이터들을 정렬해줍니다.

** 접속명령어 : mysql
	mysql -u user-name -p password 양식으로 접속가능.
	OS따라 "mysql -uuser-name -ppassword" 이렇게 붙여야 되는 것도 있음.
	그밖에 옵션 
	-h localhost 접속할 호스트지정.
	 mysql [options] db_name ; 마지막에 DB이름을 넣어 접속가능.

** mysql> DB query 문
	-database 목록 확인
	mysql> show database;
	
	-사용자 추가/권한부여
	mysql> create user 'test'@'localhost' identified by 'test1234';
	mysql> grant all privileges on test_database.* to test@'localhost';
	mysql> grant all privileges on test_database.* to test_grant@'%' identified by 'test1234';
	-> grant를 사용해 user추가 및 권한부여, %사용시 외부접속가능.

	-user 확인
	mysql> use mysql;  -> 대부분의 시스템정보는 mysql 데이터베이스에 있음.
	mysql> select user, host from user;  -> user table에서 username,host정보
	
	-password 변경
	mysql> use mysql; 
	mysql> alter user 'zabbix'@'localhost' identified by 'Hazel123!@';
	mysql> FLUSH PRIVILEGES;
	
	-user 삭제
	 drop user username@host_name;
	
	-기본 query
	mysql> use database_name;  -> 데이터베이스 변경
	mysql> show talbes;            -> table목록 확인
	mysql> select database();      -> 현재 데이터베이스 확인
	mysql> desc 테이블이름;      -> 테이블의 scheme정보 확인
        mysql> show columns from 테이블이름;    -> 테이블내 콜롬 조회

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다