티스토리 뷰

반응형

 

이번 포스팅에서는 리눅스 서버에 DB를 설치해보는 피드를 작성해보겠습니다.

 

이번 포스팅에서 설치해 볼 DB는 MySQL입니다.

 

설치 방법은 직접 설치파일을 다운받아 설치를 진행하는 방법과 apt-get을 이용한 패키지 관리자를 통한 설치 2가지 방법이 있다.

 

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

 

MySQL :: MySQL Community Downloads

The world's most popular open source database Contact MySQL  |  Login  |  Register

dev.mysql.com

다운로드를 해서 설치를 진행할 경우는 위의 사이트에서 다운로드를 받아, 설치할 서버로 설치파일을 옮긴 후 설치를 하면 된다.

 

이번 피드에서는 간단한 명령어로 설치를 할 수 있는 apt-get을 이용하여 설치해 보겠습니다.

 

$sudo apt-get install mysql-server

위의 명령어를 치고 기다리면 MySQL이 자동으로 설치가 된다.

 

설치가 완료되면, 외부에서 MySQL에 접속이 가능하도록 포트(Port)를 열어 주어야 외부에서도 DB에 접근이 가능하다.

 

1. 외부에서 접근이 가능하도록 MySQL 포트 개방

$ sudo ufw allow mysql

위의 명령어로 MySQL의 포트(3306)를 외부에서 접근 가능하도록 열어준다.

 

그리고, MySQL의 설정파일에 들어가서 bind-address = 127.0.0.1이 되어있는 부분을 # 주석처리 해주어야 정상적으로 외부접속이 가능하다.

 

$sudo vi /etc/mysql/my.cnf

설정파일은 위의 경로에서 확인이 가능하다.

 

 

 

2. MySQL 실행

$sudo systemctl start mysql

설치된 MySQL을 실행한다.

 

3. 서버가 시작될 때마다, 자동으로 MySQL 실행

$sudo systemctl enable mysql

위의 명령어로 리눅스 서버가 재시작되면, 자동으로 MySQL도 실행되도록 처리

 

위의 작업이 끝나면, 기본적인 설치작업은 끝난 상태이다.

 

이제 추가로 외부에서 사용할 수 있는 계정을 추가하는 부분까지 살펴보도록 하겠습니다.

 

우선 로그인을 해야하는데, 설치된 기본 root계정의 비밀번호는 리눅스 계정의 비밀번호와 동일합니다.

 

$ sudo /usr/bin/mysql -u root -p

 

위의 명령어를 치면 root계정으로 mysql에 로그인을 하게 되는데, 위에서 살짝 언급한대로, 초기 비밀번호는 리눅스계정의 비밀번호와 동일하니, 비밀번호를 입력하면 로그인이 됩니다.

 

이제, 설치된 MySQL에 테스트용 데이터베이스와 사용자계정을 생성하고 피드를 마무리 하겠습니다.

 

1. Database 생성

create database batch_test;

우선 위의 명령어로 사용할 데이터 베이스를 생성합니다. 데이터베이스명은 create database (데이터베이스명); 제일 뒤에 생성하고 싶은 이름으로 작성하시면 됩니다.

 

show databases;

생성 후, 제대로 생성되었는지 확인해 봅니다.

 

위와 같이 저는 batch_test라는 이름으로 Database가 정상적으로 생성되었습니다.

 

이제, 데이터베이스가 생성되었으니 사용자 계정을 생성하면 되겠습니다.

 

2. 사용자 계정 생성

create user 'test_user'@'%' identified by '1q2w3e4r'

위의 명령어로 사용자 계정을 생성 할 수 있습니다.

 

create user '사용자 계정'@'%' identified by '비밀번호' 이런 형식이고 '%'의 의미는 외부에서도 접근이 가능하도록 사용자 계정을 생성하는 것입니다.

 

사용자 계정이 생성되고나면, 정상적으로 로그인이 됩니다.

 

새로 생성된 계정에는 처음에 만든 데이터베이스에 관한 권한이 없기때문에, 처음에 만든 데이터베이스에 관한 권한을 부여하여, 작업이 가능하도록 해줍니다.

 

3. 데이터베이스 권한 부여

grant all privileges on batch_test.* to 'test_user'@'%';

위의 명령어로 새로 생성한 계정에 생성해두었던 데이터 베이스에 권한을 부여 할 수 있습니다.

 

grant all privileges on (권한을 부여할 데이터베이스명).* to '사용자 계정'@'%';

 

위와 같이 권한을 부여하고 난 후, 해당 계정으로 접속 후, show databases; 명령어로 확인해 보면 정상적으로 추가된 것을 확인 할 수 있다.

여기 까지 작업이 완료되면, 리눅스에 MySQL설치와 데이터 베이스 및 계정 세팅이 완료되어 MySQL을 사용할 수 있게 되었습니다.

 

이번 포스팅은 여기에서 마치겠습니다.

반응형
댓글