My __ 노트

(Centos7) MySQL 설치& 기본 명령어(DB, Table) 본문

DB/MySQL (관계형DB)

(Centos7) MySQL 설치& 기본 명령어(DB, Table)

블루빔 2020. 11. 23. 20:12

SQL : structured query Language

개념: 관계형 DB에서 구조화된 데이터를 질의/요청할 수 있는 언어 

 

설치( Centos7 ) :

https://dev.mysql.com/downloads/repo/yum/

wget으로 해당 repository를 다운받는다.

 wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

 

rpm으로 해당 패키지를 설치한다.

rpm -ivh mysql80-community-release-el7-3.noarch.rpm

 

yum으로 mysql-server를 설치한다.

yum install mysql-server

 

시스템 시작 시 자동 시작 & 시스템 시작

systemctl enable mysqld
systemctl start mysqld

 

/var/log/mysqld.log 파일 안에는 root의 임시 비밀번호가 있음 

 

root 비밀번호를 변경하고 설정 몇가지 하면 끝

mysql_secure_installation

 

 

----------

 

 

접근 명령어

데이터베이스 서버 접근 :

mysql -uroot -p

 

데이터베이스 접근 :

USE dbname;

 

데이터베이스 & 테이블 관련 명령어 :

 

----------

 

테이블 생성 : 

 테이블을 만들때 컬럼의 datatype을 지정해 주어야 한다. <자주 쓰는것 위주로 정리>

  숫자형 :

     INT(  )  - 수용할 수 있는 범위 지정 (약 42억 개)

 

 문자형 :

    CHAR(  )  – 고정 길이 문자열 (0~255, 기본값 1 )

    VARCHAR(  )  – 가변 길이 문자열 

 

 

  날짜형:

    DATE  - 날짜 (1000-01-01)

    DATETIME  - 날짜+시간 (1000-01-01 00:00:00)

 

더 자세한 내용은 아래 링크 클릭

www.w3schools.com/sql/sql_datatypes.asp 

 

SQL Data Types for MySQL, SQL Server, and MS Access

SQL Data Types for MySQL, SQL Server, and MS Access The data type of a column defines what value the column can hold: integer, character, money, date and time, binary, and so on. SQL Data Types Each column in a database table is required to have a name and

www.w3schools.com

 

 

예:

CREATE table table이름 (
    id INT(11) NOT NULL AUTO_INCREMENT ,
    name CHAR(100) NOT NULL , 
    description CHAR(100) NULL ,
    created DATETIME NOT NULL ,
    PRIMARY KEY(id));

 

제약조건 : 

 NOTNULL  - 값이 없는 것을 허용 안 함
     NULL  값이 없는 것을 허용
    - 0 혹은 공백을 가리키는 것이 아니라 아직 그에 대한 정보가 없음을 나타냄 

 AUTO_INCREMENT  - 자동 1씩 추가

PRIMARY KEY(id)
    - 테이블당 기본키는 1개만 생성 가능하다.