본문 바로가기
리눅스 강의

리눅스 MySQL 설치 완벽 가이드: 초보자도 쉽게!

by infolily 2024. 10. 10.

확인했음

데이터베이스 관리 시스템(DBMS) 중에서도 MySQL은 널리 쓰이는 오픈 소스 솔루션 중 하나에요. 웹 개발이나 데이터 분석 등 다양한 분야에서 활용되고 있죠. 특히 리눅스 환경에서는 MySQL을 손쉽게 설치하고 관리할 수 있어서 많은 개발자들이 애용한답니다. 이 글에서는 리눅스에서 MySQL을 설치하고 관리하는 방법을 차근차근 알려드릴게요. 혹시 데이터베이스가 뭔지 잘 모르겠다거나 MySQL이 처음이라면, 이 글을 통해 쉽고 빠르게 MySQL의 세계로 발을 들여놓을 수 있을 거예요!

MySQL 설치하기: Red Hat Enterprise Linux (RHEL) 와 Ubuntu에서

RHEL에서 MySQL 설치하기

RHEL (Red Hat Enterprise Linux)는 서버 운영체제로 널리 사용되는데요, MySQL 설치는 생각보다 간단해요. 터미널을 열고 몇 가지 명령어만 입력하면 설치가 완료된답니다.

  1. MySQL 서버 패키지 설치하기:
    RHEL에서 MySQL 서버 패키지를 설치하려면 다음 명령어를 사용하면 돼요.이 명령어를 입력하고 엔터 키를 누르면 MySQL 서버 패키지가 다운로드 및 설치되기 시작해요. 설치 시간은 인터넷 연결 속도와 시스템 사양에 따라 달라질 수 있으니, 잠깐 기다려 주세요!
  2. sudo dnf install mysql-server
  3. MySQL 서비스 시작하기: 패키지 설치가 완료되면 MySQL 서비스를 시작해야 하는데요, 이 작업은 다음 명령어를 통해 진행할 수 있어요.이 명령어를 입력하면 MySQL 서비스가 즉시 시작될 거예요. 서비스가 정상적으로 시작되었는지 확인하려면 systemctl status mysqld.service 명령어를 사용하면 된답니다.
  4. sudo systemctl start mysqld.service
  5. 부팅 시 자동 시작 설정하기: 매번 시스템을 부팅할 때마다 MySQL 서비스를 수동으로 시작하는 건 번거롭죠? 그래서 부팅 시 자동으로 MySQL 서비스가 시작되도록 설정해 둘 수 있어요.이 명령어를 입력하면 시스템 부팅 시 MySQL 서비스가 자동으로 시작되도록 설정된답니다. 이제 시스템을 다시 시작해도 MySQL 서비스가 자동으로 실행될 거예요.
  6. sudo systemctl enable mysqld.service

참고로 RHEL 9에서는 MySQL 8.0 버전을 지원하고, MariaDB와 함께 설치할 수 없다는 점을 꼭 기억해 두세요! 혹시 MariaDB를 사용해야 한다면, 다른 방법을 고려해야 한답니다.

Ubuntu에서 MySQL 설치하기

Ubuntu도 리눅스 배포판 중 하나로, RHEL과 마찬가지로 MySQL을 설치하기 쉬워요. Ubuntu에서 MySQL을 설치하는 방법은 다음과 같아요.

  1. MySQL 패키지 설치하기: 다음 명령어를 통해 MySQL 서버 패키지를 설치할 수 있어요.이 명령어를 입력하고 엔터 키를 누르면 MySQL 서버 패키지가 설치되기 시작할 거예요. 설치 과정에서 몇 가지 질문을 받을 수 있는데, 대부분 기본값으로 설정하면 문제없이 설치된답니다.
  2. sudo apt-get install mysql-server
  3. 서비스 시작 및 상태 확인하기: 패키지 설치가 완료되면 MySQL 서비스를 시작하고 상태를 확인해야 하는데요, 다음 명령어를 사용하면 돼요.sudo service mysql start 명령어를 입력하면 MySQL 서비스가 시작되고, sudo service mysql status 명령어를 입력하면 현재 서비스의 상태를 확인할 수 있답니다. 서비스가 정상적으로 실행되고 있다면 "active (running)"이라고 표시될 거예요.
  4. sudo service mysql start sudo service mysql status

MySQL 초기 설정: 보안 강화하기

MySQL을 설치한 후에는 초기 설정을 통해 보안을 강화하는 것이 중요해요. 설치된 MySQL은 기본적으로 보안 설정이 약하기 때문에, 해커의 공격에 취약할 수 있답니다.

설치 후 mysql_secure_installation 명령어를 실행하면 초기 보안 설정을 위한 단계별 안내를 받게 돼요.

sudo mysql_secure_installation

이 과정에서 루트 계정 비밀번호 설정, 익명 사용자 제거, 원격 루트 로그인 비활성화 등의 옵션을 선택할 수 있어요. 특히 루트 계정 비밀번호는 MySQL을 관리하는 데 필수적인 정보이기 때문에, 강력하고 안전한 비밀번호를 설정하는 것이 중요해요.

데이터베이스 및 사용자 관리: MySQL의 기본 기능

데이터베이스 생성하기

MySQL에서 데이터를 저장하고 관리하려면 데이터베이스를 생성해야 하는데요, 이 작업은 SQL 명령어를 사용하여 간단하게 수행할 수 있어요.

CREATE DATABASE mydatabase; 

위 명령어를 MySQL 셸에서 실행하면 mydatabase라는 이름의 데이터베이스가 생성된답니다. 이 데이터베이스는 테이블, 뷰, 스토어드 프로시저 등을 포함할 수 있으며, 여러분이 원하는 데이터를 저장하는 공간이라고 생각하면 돼요.

사용자 생성 및 권한 부여하기

데이터베이스를 안전하게 관리하기 위해서는 사용자를 생성하고 각 사용자에게 적절한 권한을 부여하는 것이 중요해요.

예를 들어 myuser라는 사용자를 생성하고 mydatabase 데이터베이스에 대한 모든 권한을 부여하려면 다음과 같은 SQL 명령어를 사용할 수 있어요.

CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';
GRANT ALL PRIVILEGES ON mydatabase.* TO 'myuser'@'localhost';
FLUSH PRIVILEGES;

첫 번째 명령어는 myuser라는 사용자를 생성하고, localhost에서 접속할 수 있도록 설정하며, 비밀번호를 mypassword로 지정하는 역할을 해요. 두 번째 명령어는 myuser에게 mydatabase 데이터베이스에 대한 모든 권한을 부여하는 역할을 한답니다. 마지막 FLUSH PRIVILEGES 명령어는 변경된 권한 설정을 적용하기 위해 실행해야 해요.

MySQL 클라이언트 사용하기: 데이터베이스에 접속하기

MySQL 클라이언트를 사용하면 터미널에서 MySQL 서버에 연결하고 데이터베이스를 관리할 수 있어요. 클라이언트를 사용하여 데이터베이스에 접속하는 방법은 다음과 같아요.

mysql -u myuser -p mydatabase

이 명령어를 입력하면 MySQL 클라이언트가 실행되고, myuser 계정으로 mydatabase 데이터베이스에 연결하라는 메시지가 나타날 거예요. 여기서 -u 옵션은 사용자 이름을, -p 옵션은 비밀번호를 입력하라는 것을 의미하며, 마지막에 mydatabase는 연결할 데이터베이스 이름을 나타내요. 비밀번호를 입력하면 해당 데이터베이스에 접속할 수 있답니다.

MySQL Workbench 사용하기: GUI 환경에서 데이터베이스 관리하기

MySQL Workbench는 MySQL 데이터베이스를 GUI 환경에서 관리할 수 있는 도구에요. 터미널에서 명령어를 입력하는 것보다 직관적이고 시각적으로 데이터베이스를 관리할 수 있기 때문에, 초보자들에게 유용하답니다.

  1. MySQL Workbench 다운로드 및 설치: MySQL Workbench는 MySQL 공식 웹사이트에서 다운로드하여 설치할 수 있어요. 운영체제에 맞는 버전을 선택하여 설치하면 된답니다.
  2. 새로운 연결 추가: MySQL Workbench를 실행한 후, Manage Connections 탭에서 새로운 연결을 추가할 수 있어요. 연결 정보에는 DB 인스턴스의 엔드포인트와 포트를 입력해야 해요. 엔드포인트는 MySQL 서버의 주소이며, 포트는 MySQL 서버가 사용하는 포트 번호를 의미한답니다. 보통 MySQL 서버의 기본 포트는 3306이에요.

Amazon RDS와 MySQL: 클라우드 환경에서 MySQL 사용하기

Amazon RDS (Relational Database Service)는 Amazon Web Services (AWS)에서 제공하는 클라우드 기반 데이터베이스 서비스에요. 이 서비스를 사용하면 MySQL 데이터베이스를 쉽게 관리하고 확장할 수 있답니다.

Amazon RDS를 사용하여 MySQL 인스턴스를 생성하면, 다음과 같은 연결 정보를 통해 DB에 접근할 수 있어요.

정보 내용
엔드포인트 mydb.123456789012.us-east-1.rds.amazonaws.com
포트 3306
사용자 admin

Amazon RDS는 MySQL 데이터베이스를 클라우드 환경에서 안전하고 효율적으로 관리하고 싶을 때 유용한 솔루션이에요. AWS 계정이 있다면, RDS를 통해 손쉽게 MySQL 인스턴스를 생성하고 관리해 볼 수 있답니다.

데이터베이스 백업 및 복구: 소중한 데이터 지키기

데이터베이스 백업은 데이터 손실을 방지하는 데 필수적인 작업이에요. 시스템 오류, 하드웨어 고장, 해킹 등 예상치 못한 상황으로 데이터가 손실될 수 있기 때문에, 정기적으로 데이터베이스를 백업해 두는 것이 좋답니다.

데이터베이스 백업하기

mysqldump 명령어를 사용하여 데이터베이스를 백업할 수 있어요.

mysqldump -u myuser -p mydatabase > mydatabase_backup.sql

이 명령어를 실행하면 mydatabase 데이터베이스의 모든 데이터가 mydatabase_backup.sql 파일로 백업된답니다. -u 옵션은 사용자 이름을, -p 옵션은 비밀번호를 입력하라는 것을 의미해요.

데이터베이스 복구하기

백업 파일을 사용하여 데이터베이스를 복구하려면 다음 명령어를 사용하면 돼요.

mysql -u myuser -p mydatabase < mydatabase_backup.sql

이 명령어를 실행하면 mydatabase_backup.sql 파일의 내용이 mydatabase 데이터베이스에 복구된답니다.

자주 묻는 질문 (FAQ)

Q1. MySQL은 어떤 용도로 사용하나요?

A1. MySQL은 웹 사이트, 애플리케이션, 데이터 분석 등 다양한 분야에서 데이터를 저장하고 관리하는 데 사용돼요. 특히 웹 개발에서 데이터베이스로 널리 사용되고 있답니다.

Q2. MySQL과 MariaDB의 차이점은 무엇인가요?

A2. MySQL과 MariaDB는 모두 오픈 소스 관계형 데이터베이스 관리 시스템이에요. 하지만 MariaDB는 MySQL의 포크(fork) 버전으로, MySQL의 개발 방향에 동의하지 않아 새롭게 개발된 버전이라고 생각하면 돼요. 기능적으로는 유사하지만, 일부 기능이나 성능 면에서 차이가 있을 수 있답니다.

Q3. MySQL Workbench를 사용해야 하나요?

A3. MySQL Workbench는 MySQL 데이터베이스를 GUI 환경에서 관리하는 데 유용한 도구에요. 터미널에서 명령어를 입력하는 것보다 직관적이고 시각적으로 데이터베이스를 관리할 수 있기 때문에, 초보자에게 추천하는 방법이에요. 하지만 숙련된 사용자라면 터미널에서 명령어를 사용하는 것을 선호할 수도 있답니다.

마무리

이 글이 리눅스에서 MySQL을 설치하고 관리하는 데 도움이 되었기를 바라요. MySQL은 강력하고 유연한 데이터베이스 시스템으로, 여러분의 프로젝트에 큰 도움을 줄 수 있을 거예요! 궁금한 점이 있다면 언제든지 댓글로 남겨주세요!

키워드 MySQL, 데이터베이스, 리눅스, RHEL, Ubuntu, DBMS, 데이터베이스관리, 데이터베이스설치, MySQL설치, MySQL관리, 오픈소스, 클라우드, AmazonRDS, 백업, 복구, mysqldump, MySQLWorkbench, 데이터베이스백업, 데이터베이스복구, 서버관리, IT, 개발, 데브옵스, 해커, 보안, SQL, 데이터, 정보, 기술, 튜토리얼, 가이드

 

관련 포스트 더 보기

2024.10.07 - [리눅스 강의] - 리눅스 사용자 관리, 보안과 효율성의 비밀

 

리눅스 사용자 관리, 보안과 효율성의 비밀

리눅스 시스템을 효율적으로 운영하고 보안을 강화하려면 사용자와 그룹을 관리하는 것이 필수적이에요. 사용자 계정 생성부터 그룹 관리, 권한 설정까지, 이 모든 과정은 시스템의 안정성과

infolily.tistory.com

2024.10.08 - [리눅스 강의] - 리눅스 권한 관리: chmod와 chown 마스터하기, 이제 더 이상 막막하지 않아요!

 

리눅스 권한 관리: chmod와 chown 마스터하기, 이제 더 이상 막막하지 않아요!

확인했음리눅스를 좀 더 능숙하게 다루고 싶다면, 소프트웨어 설치와 관리를 빼놓을 수 없겠죠? 윈도우에서 프로그램 설치하듯이 쉽게 척척 해낼 수 있는 방법이 바로 리눅스 패키지 관리랍니

infolily.tistory.com

2024.10.10 - [리눅스 강의] - 리눅스 Apache 웹서버 설치 완벽 가이드: 초보자도 쉽게!

2024.10.07 - [리눅스 강의] - 리눅스 파일 시스템 완벽 이해: 저장 & 관리 핵심 정복!

 

리눅스 파일 시스템 완벽 이해: 저장 & 관리 핵심 정복!

포스팅출력리눅스 운영체제를 좀 더 깊이 있게 이해하고 싶으신가요? 그렇다면 리눅스 파일 시스템에 대한 이해는 필수적이에요! 리눅스 파일 시스템은 운영체제의 심장과도 같아서, 여러분의

infolily.tistory.com