ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [무작정 따라 하기] Linux(Ubuntu)에서 MySQL 서버 환경 구축 및 MySQL 맛보기
    무작정 따라 하기 2020. 1. 8. 00:37

    이번 포스팅은  Linux(Ubuntu) 환경에서 MySQL  환경을 구축해보고

    MySQL에 대해 감을 잡을 수 있도록 간단하게 테이블과 레코드 생성 및 조회, db import를 해보겠습니다.

     

    다루는 내용

    - MySQL 설치

    - MySQL 테이블, 레코드 생성 및 조회

    - .sql 파일로부터 db import

    - 계정 비밀번호 설정

    - 포트 설정

     

    실행 환경

    OS : Ubuntu 18.04 LTS

     

    1. MySQL 패키지 설치 및 서버 실행

    MySQL 우분투 패키지를 설치합니다.

    (ubuntu)$ apt-get install mysql-server mysql-client

    아래 명령어로 설치 유무와 버전을 확인해줍니다.

    (ubuntu)$ mysql --version

     

    MySQL 설치 확인

    아래 명령어로 MySQL 서버를 실행합니다.

    (ubuntu)$ service mysql start

    MySQL 서버 실행

     

    2. MySQL 데이터베이스 생성 및 접속

    MySQL에서 db를 생성해보겠습니다.

    아래 명령어는 MySQL에서 root(ubuntu의 root 계정 아님)라는 유저 소유의 testbook이라는 db를 생성하는 명령어입니다.

    (ubuntu)$ mysqladmin -u root create testbook -p

    생성과정에서 비밀번호를 입력하라는 안내가 나오는데, 초기에는 비밀번호가 설정되어 있지 않아 그냥 엔터를 입력해주면 됩니다.

    testbook 이라는 db가 생성됨. 별다른 안내는 없습니다.

    아래 명령어를 통해 root라는 사용자로 MySQL을 접속할 수 있습니다.

    (ubuntu)$ mysql -u root -p

    MySQL에 접속하였습니다.

    아래 명령어를 통해 현재 db 리스트를 확인 할수 있습니다.

    mysql> show databases;

    db 리스트 확인

    방금 만들었던 testbook을 확인 할수 있습니다.

     

    3. 맛보기 - 테이블 생성 및 확인

    사용할 db를 use 명령어를 통해 명시해줍니다.

    mysql> use testbook 

    show tables 명령어를 통해 현재 testbook db의 테이블을 확인해줍니다.

    mysql> show tables;

    아직 비어있는 testbook임을 확인 할 수 있습니다.

    현재 testbook db에는 테이블이 없습니다.

     

    아래 명령어로 테이블을 하나 만들어 줍니다.

    mysql> create table users (
            id varchar(10) primary key,
            name varchar(20) not null,
            password varchar(10) not null
            );

    아래 속성을 갖는 테이블을 생성하였습니다.

    • id(기본키, 최대 10자리 varchar 타입 데이터)
    • name(필수 값, 최대 20자리 varchar 타입 데이터) 
    • password(필수값, 최대 10자리 varchar 타입 데이터)

    테이블 생성 쿼리 결과

    다시 테이블을 확인해보면 users라는 테이블이 추가되어 있음을 확인할 수 있습니다.

    mysql> show tables;

    users라는 테이블이 생성되었음을 확인.

    DESC 명령어로 테이블 속성을 확인 할 수 있습니다.

    mysql> DESC tables;

    생성한 테이블 속성 확인

    4. 맛보기 - 테이블에 레코드 추가 및 확인

    테이블 레코드 확인

    mysql> select * from users

    users에 아직 레코드가 없습니다.

    레코드를 추가해보겠습니다.

    mysql> insert into users values (0, "name0", "pass0");
            insert into users values (1, "name1", "pass1");
            insert into users values (2, "name2", "pass2");

    레코드 추가, 결과 화면

    mysql> select * from users

    추가된 레코드 확인

    3개의 레코드가 추가된 것을 확인 할수 있습니다.

     

    5. 맛보기 - import db (외부 db 가져오기)

    git이 설치되어 있지않다면 아래 명령어로 설치합니다.

    (ubuntu)$ apt-get install git

     

    예시 db는 https://github.com/datacharmer/test_db를 활용하였습니다.

    예시 db 파일을 git을 통해 다운로드하고 해당 디렉터리로 이동합니다.

    (ubuntu)$ git clone https://github.com/datacharmer/test_db.git
    (ubuntu)$ cd test_db

     

    mysql < 를 통해 sql 파일을 MySQL에 import합니다. (***.sql 파일은 db를 저장해 놓은 파일이라고 생각하면 됩니다.) 

    (ubuntu)$ mysql < employees.sql

     

    employees.sql을 db로 import

    mysql을 접속해서 import한 db를 확인해봅니다.

    (ubuntu)$ mysql -u root -p
    mysql> use employees 
    mysql> show tables;

    import한 db의 테이블

    한 테이블의 레코드를 확인해봅니다.

    mysql> select * from employees;

    employees 테이블에 300024개의 레코드가 있는 것을 확인

     

    6. root 계정 초기 비밀번호 설정

    mysql> use mysql 
    mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '1234'

    1234 부분을 원하는 비밀번호로 변경하여 사용하면 됩니다.

    root 비밀번호 변경

     

    7. MySQL 포트 설정

    MySQL은 3306번이 기본 포트로 설정되어 있습니다.

    포트를 변경하고 싶다면, mysqld.cnf 파일에서 port 부분을 수정하면 됩니다.

    (ubuntu)$ vim /etc/mysql/mysql.conf.d/mysqld.cnf

    mysqld.cnf 파일의 port부분을 수정하면 port 번호 수정이 가능합니다.

     

Designed by Tistory.