<백엔드의 시작 01. mysql from 설치 to 실행>

강민수·2021년 12월 16일
0

백엔드

목록 보기
13/21

이번 시간에는 백엔드 상에서 테이블 db를 만들 수 있는 mysql에 대해 한 번 알아보고자 한다.


01. MySQL이란.

MYSQL은 전세계적으로 가장 널리 사용되고 있는 오픈 소스 데이터베이스이며, MySQL AB사가 개발하여 배포/판매하고 있는 데이터베이스(DataBase)이다. 표준 데이터베이스 질의 언어 SQL(Structured Query Language)을 사용하는 개방 소스의 관계형 데이터베이스 관리 관리시스템(RDBMS), 매우 빠르고, 유연하며, 사용하기 쉬운 특징이 있다.

  1. mysql 설치
    mysql은 터미널 상에서 구현되기 때문에 명령어로 설치하는 방법에 대해 기술하겠다. 참고로 필자는 맥 사용자이기 때문에 맥으로 설치하는 과정에 대해 간단히 기술한다.

1. MacOS


  • 설치 과정
    brew install mysql
    brew 명령어를 위한 HomeBrew 패키지 관리자 미설치시 아래 명령어를 통해 설치 필요
    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

    MySQL 설정

    아래 명령어로 mysql을 시작.
    mysql.server start
    아래 명령어로 기본 설정을 시작.
    mysql_secure_installation

    이제 여러 질문들이 출력된다. 출력에 대한 답은 본인이 한 방법으로만 간단하게 기술. 우선 아래의 과정에 앞서 정리해보자면 아래와 같다.
    1. 비밀번호 복잡도 검사 과정 (n)

    2. 비밀번호 입력 & 확인

    3. 익명 사용자 삭제 (y)

    4. 원격 접속 허용하지 않을 것인가? (y)

    5. test DB 삭제 (n)

    6. previlege 테이블을 다시 로드할 것인지 (y)

      아래는 위에 나타낸 과정의 자세한 내용.

      💡 Securing the MySQL server deployment. Connecting to MySQL using a blank password. VALIDATE PASSWORD PLUGIN can be used to test passwords and improve securitNy. It checks the strength of password and allows the users to set only those passwords which are secure enough. Would you like to setup VALIDATE PASSWORD plugin? Press y|Y for Yes, any other key for No:

      위의 과정은 복잡한 비밀번호 설정을 위한 과정을 거치겠냐고 묻는 과정이며,No로 스킵하였다.

      💡 Please set the password for root here. New password: Re-enter new password:

      위의 과정은 루트 비밀번호를 입력하는 과정.비밀번호와 비밀번호 확인란을 입력하게 된다.

      💡 By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. Remove anonymous users? (Press y|Y for Yes, any other key for No) : y

      익명 사용자를 삭제할 것인지 묻는다.y를 입력하였다.

      💡 Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y

      원격 접속을 허용할 것인지 묻는다. 로컬에서만 개발 예정이기에 y를 입력했다.

      💡 By default, MySQL comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. Remove test database and access to it? (Press y|Y for Yes, any other key for No) :

      test 데이터베이스 삭제를 묻고 있습니다.No를 입력하였다.

      💡 Reload privilege tables now? (Press y|Y for Yes, any other key for No) :

      previlege 테이블을 다시 로드할 것인지 묻는다.

      yes를 입력, 과정을 마친다.

      💡 All done!

      위의 메세지와 함께 설정이 종료.


      추가적으로 mysql server가 재부팅과 상관없이 켜져있을 수 있도록 brew services를 이용하여 서버를 켜둔다.

      brew services start mysql

      MySQL 사용

      mysql -u root -p

      위 명령어 입력 후 루트 비밀번호를 입력하여 mysql을 사용할 수 있게 된다.

    • -u 옵션은 MySQL에 접속할 사용자의 아이디를 명시하는 옵션. 여기서는 root 사용자로 접속한 것.
    • -p 옵션은 비밀번호를 직접 입력하겠다고 명시하는 옵션.

    MySQL 로그인 시 sudo 사용하지 않도록 설정하기(추가 단계)

mysql > use mysql;
mysql > ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '사용할 비밀번호 입력';
mysql > FLUSH PRIVILEGES;

이상으로 mysql 설치부터 실행까지에 대해 알아봤다. 이는 필자가 로컬 상에서만 사용 목적으로 한 방법이기에 다른 방법으로 사용할 분은 구글링 해 보시면 된다. 그냥 설치 및 사용법이 이렇다는 것만 알아두면 되겠다. 다음 포스팅부터는 이제 실행 후 데이터 테이블을 만들고 사용하는 명령어에 대한 문법을 포스팅 하겠다.

--------------------to be continued----------------------

profile
개발도 예능처럼 재미지게~

0개의 댓글