MySQL의 기본 명령어와 SQL문 정리. 내가 RDBMS에 완전 문외한이기 때문에 기본 SQL쿼리까지...
Redhat Linux 7.3, MySQL 3.23.58 에서 테스트함.
설치는 Redhat 기본 제공 RPM으로 했다.

데이터베이스 접속
$ mysql -u 사용자명 -p dbname

설치 직후에는 root 사용자에 비밀번호가 없으므로 다음과 같이 접속하여 MySQL을 관리할 수 있다.

$ mysql -u root mysql


비밀번호 변경
MySQL을 설치한 직후에는 root 계정에 암호가 지정되어 있지 않다.
다음 세가지 방법으로 비밀번호를 변경 할 수 있다.

  • mysqladmin이용
    $ mysqladmin -u root password 새비밀번호

  • update문 이용
    $ mysql -u root mysql

    mysql> UPDATE user SET password=password('새비밀번호') WHERE user='root';
    mysql> FLUSH PRIVILEGES;


  • Set Password 이용
    SET PASSWORD FOR root=password('새비밀번호');


일단 root 비밀번호가 설정된 상태에서는 mysql이나 mysqladmin 명령을 실행할 때 -p 옵션을 붙여주고 기존 비밀번호를 입력해야만 한다.

사용자 추가/삭제
mysql> GRANT ALL PRIVILEGES ON dbname.* TO username@localhost IDENTIFIED BY 'password';

username 이라는 사용자를 password라는 비밀번호를 갖도록 하여 추가한다. username은 dbname이라는
데이타베이스에 대해 모든 권한을 가지고 있다.
username 사용자는 로칼 호스트에서만 접속할 수 있다. 다른 호스트에서 접속하려면
GRANT ALL PRIVILEGES ON dbname.* TO username@'%' IDENTIFIED BY 'password';

위를 또한 번 실행한다. '%'에서 홑따옴표를 주의한다.
추가 : '%'를 호스트네임으로 지정해도 모든 호스트에서 접속할 수 없었다. 각 호스트별로 다 지정해야 했다.
아래 댓글에서 rukikuki님이 알려주셨습니다.
GRANT ALL PRIVILEGES ON testdb.* TO 'username'@'%' IDENTIFIED BY 'password' ;
처럼 'username' 이런식으로 홑따옴표를 username 에도 붙여야 하더군요..


불필요한 사용자 삭제는
mysql> DLETE FROM user WHERE user='username';
mysql> FLUSH PRIVILEGES;


데이터베이스 생성/보기

  • 데이터베이스를 생성하고,
    mysql> CREATE DATABASE dbname;

  • 현재 존재하는 데이터베이스 목록을 보여준다.
    mysql> SHOW DATABASES;

  • 특정 데이타베이스를 사용하겠다고 선언한다.
    mysql> USE dbname;

  • 쓸모 없으면 과감히 삭제한다.
    mysql> DROP DATABASE [IF EXISTS] dbname;

    IF EXISTS 옵션은 비록 데이타베이스가 없더라도 오류를 발생시키지 말라는 의미이다.


테이블 생성/보기

  • 테이블을 생성하고,
    mysql> CREATE TABLE tablename (
    column_name1 INT,
    column_name2 VARCHAR(15),
    column_name3 INT );

  • 현재 데이타베이스의 테이블 목록을 보고
    mysql> SHOW TABLES;

  • 테이블 구조를 살펴본다.
    mysql> EXPLAIN tablesname;
    혹은
    mysql> DESCRIBE tablename;

  • 이름을 잘못 지정했으면 이름을 변경할 수도 있다.
    mysql> RENAME TABLE tablename1 TO tablename2[, tablename3 TO tablename4];

  • 필요 없으면 삭제한다.
    mysql> DROP TABLE [IF EXISTS] tablename;



현재 상태 보기

mysql> status

--------------
mysql Ver 11.18 Distrib 3.23.58, for pc-linux (i686)

Connection id: 26
Current database: study
Current user: study@localhost
Current pager: stdout
Using outfile: ''
Server version: 3.23.58
Protocol version: 10
Connection: Localhost via UNIX socket
Client characterset: latin1
Server characterset: euc_kr
UNIX socket: /var/lib/mysql/mysql.sock
Uptime: 2 hours 9 min 59 sec

Threads: 1 Questions: 160 Slow queries: 0 Opens: 28 Flush tables: 1
Open tables: 1 Queries per second avg: 0.021
--------------



INSERT
mysql> INSERT INTO tablename VALUES(값1, 값2, ...);

혹은

mysql> INSERT INTO tablename (col1, col2, ...) VALUES(값1, 값2, ...);


SELECT
mysql> SELECT col1, col2, ... FROM tablename;

컬럼명을 *로 하면 모든 컬럼 의미.

mysql> SELECT col1 AS '성명', col2 AS '국어점수' FROM grade;

컬럼의 이름을 바꿔서 출력.

mysql> SELECT * FROM tablename ORDER BY col1 DESC;
mysql> SELECT col1, korean + math english AS '총점' FROM tablename ORDER BY '총점' ASC;

DESC는 내림차순 ASC는 오름차순.

mysql> SELECT * FROM grade WHERE korean < 90;

조건줘서 SELECT.

mysql> SELECT * FROM grade LIMIT 10;

결과중 처음부터 10개만 가져오기

mysql> SELECT * FROM grade LIMIT 100, 10;

결과중 100번째부터 10개만 가져오기. 첫번째 레코드는 0번 부터 시작한다.

UPDATE
mysql> UPDATE tablename SET col1=새값 WEHER 조건


DELETE
mysql> DELETE FROM tablename WEHRE 조건


mysql에서 쿼리 결과 세로로 보기
-E 옵션을 줘서 실행한다.
$ mysql -E -u root -p mysql


mysql에서 발생한 오류나 경고 다시 보기
mysql> show errors;
mysql> show warnings;

'개발지식창고 > DataBase' 카테고리의 다른 글

MySQL : Data Type (1 of 2)  (0) 2010.08.31
MFC MYSQL 연동  (0) 2010.08.31
[MySQL] 기본명령어  (0) 2010.08.31
[MySQL] 데이타베이스명령어  (0) 2010.08.31
[MySQL]MySQL 테이블수정  (0) 2010.08.31
Posted by 모과이IT
,




마이크로 소프트사 행사때마다 나누어 준다던 포스터 (비주얼스튜디오 2008 단축키)
Posted by 모과이IT
,
명령이름 바로가기 키 설명
디버그.코드변경내용 적용 Alt + F10 편집하며 계속하기를 시작하여 디버그 중인 코드에 변경 내용을 적용합니다.
디버그.자동 Ctrl + Alt + V, A 현재 프로시저에서 현재 실행되는 줄의 범위에 현재 포함된 변수의 값을 볼 수 있는 자동 창을 표시합니다.
디버그.모두 중단 Ctrl + Alt + Break 디버깅 세션의 모든 프로세스 실행을 일시 중지 합니다. 실행 모드에서만 사용할 수 있습니다.
디버그.함수에서 중단 Ctrl + B 새 중단점 대화상자가 표시됩니다.
디버그.중단점 Ctrl + Alt + B 중단점을 추가하고 수정할 수 있는 중단점 대화상자를 표시합니다.
디버그.호출 스택 Ctrl + Alt + C 활성화된 모든 프로시저 목록이나 현재 실행 쓰레드에 대한 스택 프레임을 표시하는 호출 스택 창을 표시합니다. 실행 모드에서만 사용 할 수 있습니다.
디버그.모든 중단점 삭제 Ctrl + Shift + F9 프로젝트의 모든 중단점을 지웁니다.
디버그.디스어셈블리 Ctrl + Alt + D 디스어셈블리 창을 표시합니다.
디버그.중단점 설정 Ctrl + F9 중단점을 비활성 상태에서 활성 상태로 전환 합니다.
디버그.예외 Ctrl + Alt + E 예외 대화상자를 표시합니다.
디버그.직접실행 Ctrl + Alt + I 식을 계산하고 개별 명령을 실행할 수 있는 직접 실행 창을 표시합니다.
디버그.지역 Ctrl + Alt + V, L 현재 스택 프레임의 각 프로시저에 대한 변수 및 각 변수의 값을 볼 수 잇는 지역 창을 표시합니다.
디버그.메모리1 Ctrl + Alt + M, 1 조사식 또는 변수 창에서는 잘 표시되지 않는 큰 버퍼, 문자열 및 기타 데이터를 볼수 잇는 메모리 1 창을 표시합니다.
디버그.메모리2 Ctrl + Alt + M, 2 조사식 또는 변수 창에서는 잘 표시되지 않는 큰 버퍼, 문자열 및 기타 데이터를 볼수 잇는 메모리 2 창을 표시합니다.
디버그.메모리3 Ctrl + Alt + M, 3 조사식 또는 변수 창에서는 잘 표시되지 않는 큰 버퍼, 문자열 및 기타 데이터를 볼수 잇는 메모리 3 창을 표시합니다.
디버그.메모리4 Ctrl + Alt + M, 4 조사식 또는 변수 창에서는 잘 표시되지 않는 큰 버퍼, 문자열 및 기타 데이터를 볼수 잇는 메모리 4 창을 표시합니다.
디버그.모듈 Ctrl + Alt + U 프로그램에서 사용하는 .dll 또는 .exe 파일을 볼 수 있는 모듈 창을 표시합니다. 다중 프로세스 디버깅에서 마우스 오른쪽 단추로 클릭하여 모든 프로그램에 대해 모듈 표시를 선택할 수 있습니다.
디버그.프로세스 Ctrl + Alt + Z 프로세스 창을 표시합니다. 실행 모드에서 사용할 수 있습니다.
디버그.간략한 조사식 Ctrl + Alt + Q

또는

Shift + F9
선택한 식의 현재 값이 포함된 간략한 조사식 대화상자를 표시합니다. 중단 모드에서만 사용할 수 있습니다.
조사식을 아직 정의하지 않은 변수, 속성 또는 기타 식의 현재 값을 확인 하려면 이 명령을 사용 합니다.
디버그.다시 시작 Ctrl + Shift + F5 디버깅 세션을 종료하고 다시 빌드한 다음 처음부터 다시 응용 프로그램 실행을 시작합니다. 중단 및 실행 모드에서 사용할 수 있습니다.
디버그.커서까지 실행 Ctrl + F10 중단 모드에서는 현재 문부터 선택한 문까지 코드 실행을 다시 시작 합니다. 현재 실행 중인 줄의 여백 표시기가 여백 표시줄에 나타납니다. 디자인 모드에서는 디버거를 시작하고 커서 위치까지 코드를 실행 합니다.
디버그.스크립트 탐색기 Ctrl + Alt + N 현재 디버깅 프로세스에 있는 문서들을 표시하는 스크립트 탐색기 창을 표시합니다. 실행 모드에서 사용할 수 있습니다.
디버그.다음문 설정 Ctrl + Shift + F10 선택한 코드 줄을 실행 지점으로 설정합니다.
디버그.다음문 표시 Alt + Num 다음에 실행할 문을 강조 표시합니다.
디버그.시작 F5 자동으로 디버거에 연결하고 속성 대화상자에 지정된 시작 폼에서 응용 프로그램을 실행합니다. 중단 모드에서는 계속으로 바뀝니다.
디버그.디버깅하지 않고 시작 Shift + Alt + F5 디버거를 호출하지 않고 코드를 실행 합니다.
디버그.한단계씩 코드 실행 F11 한 번에 하나씩 코드를 실행한 다음 함수 호출을 실행합니다.
디버그.현재 프로세스
한단계씩 코드 실행
Ctrl + Alt + F11 프로세스 창에서 사용할 수 있습니다.
디버그.프로시저 나가기
디버그.현재 프로세스
Shift + F11 현재 실행 지점에서 함수의 나머지 줄을 실행 합니다.
프로시저 나가기 Ctrl + Shift + Alt + F11 프로세스 창에서 사용할 수 있습니다.
디버그.프로시저 단위 실행 F10 다음 코드 줄을 실행하지만 함수 호출을 통한 실행은 제외 됩니다.
디버그.현재 프로세스
프로시저 단위 실행
Ctrl + Alt + F10 프로세스 창에서 사용할 수 있습니다.
디버그.디버깅 중지 Shift + F5 프로그램에서 현재 응용 프로그램의 실행을 중단합니다. 중단 및 실행 모드에서 사용할 수 있습니다.
디버그.쓰레드 Ctrl + Alt + H 현재 프로세스의 모든 쓰레드와 해당 쓰레드에 대한 정보를 볼 수 있는 쓰레드 창을 표시합니다.
디버그.중단점 설정 해제 F9 현재 줄에 중단점을 설정하거나 제거합니다.
디버그.디스어셈블리 설정 해제 Ctrl + F11 현재 소스 파일에 대한 디스어셈블리 정보를 표시합니다.
중단 모드에서만 사용 할 수 있습니다.
디버그.조사식1 Ctrl + Alt + W, 1 선택한 변수 또는 조사식의 값을 볼 수 있는 조사식 1 창을 표시합니다.
디버그.조사식2 Ctrl + Alt + W, 2 선택한 변수 또는 조사식의 값을 볼 수 있는 조사식 2 창을 표시합니다.
디버그.조사식3 Ctrl + Alt + W, 3 선택한 변수 또는 조사식의 값을 볼 수 있는 조사식 3 창을 표시합니다.
디버그.조사식4 Ctrl + Alt + W, 4 선택한 변수 또는 조사식의 값을 볼 수 있는 조사식 4 창을 표시합니다.
디버거 상황에 맞는 메뉴.
중단점창.삭제
Alt + F9, D 선택한 중단점을 제거합니다.
중단점 창 내에서만 사용할 수 있습니다.
디버거 상황에 맞는 메뉴.
중단점창.디스어셈블리로 이동
Alt + F9, A 디스어셈블리창을 표시합니다.
중단점 창 내에서만 사용할 수 있습니다.
디버거 상황에 맞는 메뉴.
중단점창.소스코드로 이동
Alt + F9, S 코드 파일에서 선택한 중단점 위치로 이동합니다.
중단점 창 내에서만 사용할 수 있습니다.
도구.프로세스에 연결 Ctrl + Alt + P 한 솔루션에서 여러 프로그램을 동시에 디버깅 할 수 있는 프로세스에 연결 대화살자를 표시합니다.


Posted by 모과이IT
,