• 워드프레스 → 라이믹스 블로그 이전 완료 일주일 동안 열지 않기
  • 목록
  • 아래로
  • 위로
  • 검색

Maria 우분투(Ubuntu) 22.04 Server MariaDB 설치 및 DB, 계정 생성

키큰난쟁이 키큰난쟁이
77 0 0

MariaDB.png.jpg


 

MariaDB 설치하기

 

MariaDB의 Server와 Client 패키지 설치

 

apt install mariadb-server mariadb-client

 

MariaDB 접속 확인

 

 mariadb

 


 

MariaDB 보안 설정

 

MariaDB 보안 설정

 

↓아래 명령어를 입력하면 root에 대한 패스워드 및 테스트 테이블에 대한 삭제 등을 진행하실 수 있습니다.

mariadb-secure-installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!
 
In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
 
Enter current password for root (enter for none):
OK, successfully used password, moving on...
 
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
## root 암호 설정 여부 : Y 권장
Set root password? [Y/n]

New password: mariadb!
Re-enter new password: mariadb! 
Password updated successfully!
Reloading privilege tables..
 ... Success!
 
 
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB 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.
## 익명 사용자 삭제 여부 : Y 권장
Remove anonymous users? [Y/n]

... Success!
 
Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.
## root 원격 접속 차단 여부 : Y 권장
Disallow root login remotely? [Y/n]

... Success!
 
By default, MariaDB 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.
## 테스트 DB 및 접속 정보 삭제 여부 : Y 권장
Remove test database and access to it? [Y/n]

- Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!
 
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
## 지금까지 설정한 권한 정보 적용 여부 : Y 권장
Reload privilege tables now? [Y/n]

Cleaning up...
 
All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.
 
Thanks for using MariaDB!

## 설정 완료

 

설정 후 MariaDB 정상적으로 접속되는지 확인

 

#관리자 권한으로 DB접속
mariadb
#일반 계정으로 DB접속
mariadb -uroot -p
password 입력

 


 

MariaDB 테이블 대소문자 구분 설정 해제 및 기본 포트 변경

 

📌 최초로 MariaDB를 설치하면 리눅스 파일 시스템 기본 설정 상 윈도우와 다르게 테이블 이름이 대소문자를 구분 윈도우와 함께 이용하는 에이전트등에 문제가 있을 수 있기에 해당 설정을 먼저 수정해주는 편이나, 사내 정책에 맞춰 적용 필요

 

MariaDB 대소문자 구분 확인

 

# DB 접속
mariadb
## MariaDB 접속 후
show variables like 'lower_case_table_names';

 

lower_case_table_name 기능
0 테이블 대소문자 구분
1 테이블 대소문자 구분 없이 소문자로 저장
2 윈도우에서 테이블 대소문자 구분

 

MariaDB 서버 설정 파일을 관리자 권한으로 vi 문서 편집기를 이용하여 수정

vi /etc/mysql/mariadb.conf.d/50-server.cnf

↓주석처리 된 port 부분을 주석 해제한 뒤 원하는 임의의 포트를 입력 (MariaDB의 기본포트는 3306)

# this is only for the mysqld standalone daemon
[mysqld]

#
# * Basic Settings
#

#user                  = mysql
pid-file               = /run/mysqld/mysqld.pid
basedir                = /usr
#datadir                = /var/lib/mysql
#tmpdir                 = /tmp
port                   = 3306
lower_case_table_names = 0

 

MariaDB의 서비스를 다시 시작

service mariadb restart
## 또는
systemctl restart mysql

 

lower_case_table_name 설정이 변경 됬는지 확인

## MariaDB 접속 후
show variables like 'lower_case_table_names';

 

포트가 정상적으로 변경 되었는지 확인

telnet localhost 포트번호
## 또는
netstat -tnlp

 


 

방화벽 설정

 

위에서 지정한 포트(3306) UFW를 이용하여 방화벽 열기

 

## UFW 활성화
ufw enable

## 지정한 포트(3306) 방화벽 열기
ufw allow 3306

## UFW 상태 확인
ufw status verbose

 

우분투(Ubuntu) 방화벽(UFW) 설정 ← 해당 링크로 가서 확인

 


 

외부 접속 설정

 

MariaDB 설정 파일 50-server.cnf 문서 편집기로 열기

## MariaDB 설정 경로로 이동
cd /etc/mysql/mariadb.conf.d/
## server 설정 파일을 vu 문서 편집기 열기
vi 50-server.cnf

 

50-server.cnf 설정 파일 수정

## bind-address 항목을 0.0.0.0으로 변경합니다. (혹은 #을 통한 주석 처리로도 가능함.) 

# localhost which is more compatible and is not less secure.
## 아래 주석 처리 또는 0.0.0.0으로 변경
# bind-address                = 127.0.0.1

#
# * Find Tuning
#

#key_buffer_size           = 128M
#max_allowed_packet        = 1G

 

변경이 완료된 후 설정 파일 적용을 위해 서비스 재시작

## MariaDB service 재시작
service mariadb restart
## 또는
systemctl restart mysql

 


 

DB, 계정 생성 및 권한 부여

 

DB, 계정 생성 및 권한 부여

 

## MariaDB에 접속
mariadb
## (dbname)으로 데이터베이스 생성
CREATE DATABASE DB명;
## (userID) 계정을 (password) 비밀번호로 모든 IP주소('%')를 통하여 접근 가능하게 생성
CREATE USER 'User명'@'%' IDENTIFIED BY '비밀번호';
## (dbname) 아래 있는 전체 테이블(*)에 대하여 생성된 (userID) 계정에 전체 권한을 줌
GRANT ALL PRIVILEGES ON (dbname).* TO '(User명)'@'%';
## 현재 설정된 유저 권한을 적용 함
FLUSH PRIVILEGES;
## MariaDB 접속 종료
EXIT;

 


 

MariaDB 삭제

 

설치 된 MariaDB 패키지 확인

 

↓ MariaDB 패키지를 확인

sudo dpkg -l | grep mariadb 

ii  mariadb-client-10.3                        1:10.3.32-0ubuntu0.20.04.1            amd64        MariaDB database client binaries
ii  mariadb-client-core-10.3                   1:10.3.32-0ubuntu0.20.04.1            amd64        MariaDB database core client binaries
ii  mariadb-common                             1:10.3.32-0ubuntu0.20.04.1            all          MariaDB common metapackage
ii  mariadb-server                             1:10.3.32-0ubuntu0.20.04.1            all          MariaDB database server (metapackage depending on the latest version)
ii  mariadb-server-10.3                        1:10.3.32-0ubuntu0.20.04.1            amd64        MariaDB database server binaries
ii  mariadb-server-core-10.3                   1:10.3.32-0ubuntu0.20.04.1            amd64        MariaDB database core server files

 

MariaDB 패키지 삭제

sudo apt-get purge mariadb-server
sudo apt-get purge mariadb-server-10.3
sudo apt-get purge mariadb-client-10.3
sudo apt-get purge mariadb-server-core-10.3
sudo apt-get purge mariadb-client-core-10.3
sudo apt-get purge mariadb-common

 


 

신고공유스크랩

댓글 0

댓글 쓰기
에디터 모드

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

이 댓글을 삭제하시겠습니까?

공유

퍼머링크