자유 그리고 경험

ubuntu mariadb 설치 및 외부접속 기본 설정 본문

기술

ubuntu mariadb 설치 및 외부접속 기본 설정

배아줄기세포 2022. 6. 27. 22:20
반응형

mariaDB
mariaDB

mysql 설치

$apt install mariadb-server
$ls /etc/mysql    #설치되면 생성되는 디렉토리

초기 비밀번호 설정

$sudo mysql_secure_installation

#위 명령어로 설정할 수 있는 것들
 #루트 패스워드 설정 여부
 #default로 설치된 익명 사용자 삭제 여부
 #root 계정의 원격 접속 허용 여부
 #default로 설치된 데이터 베이스 삭제 여부
  • 나중에 초기비밀번호 다시 검색하지 말고 미리미리 설정해두는 게 좋습니다.
  • 비밀번호는 안전한 곳에 적어두거나 꼭 기억해두세요!
  • 비밀번호만 기억한다면 위 명령어로 다시 설정할 수 있습니다.

DB 생성, 계정생성, 권한설정

$sudo mysql

# DB 생성
create database [DB이름] default character set utf8;

# 내장 DB인 mysql DB를 사용함.
use mysql;

# 'my' 계정을 1234 비밀번호로 생성 '%'는 모든 아이피
create user 'my'@'%' identified by '1234';

grant all privileges on mydatabase.* to my@'%';

flush privileges;

exit

접속해보기

$mysql -u 유저아이디 -p 비밀번호
#위 예제 설정대로라면 mysql -u my -p 1234;
  • 잘 안된다면 sudo mysql 명령어로도 재설정 가능한 상태입니다.

외부접속 허용

#mysql은 다른 설정파일임
$sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

# bind-address를 주석처리
#bind-address            = 127.0.0.1

$service mysql restart
  • 기본 포트는 3306 입니다.
  • 방화벽에서 3306은 접근 허용시켜야 합니다.
$sudo ufw allow 3306/tcp
  • 방화벽 관련 포스팅은 이 글이 가장 좋아 보입니다.
 

[Ubuntu] 우분투 방화벽(UFW) 설정

우분투의 기본적인 방화벽은 UFW입니다. 이는 iptables를 좀 더 쉽게 설정할 수 있도록 한 것인데 간단한 방화벽 구성에는 문제가 없지만 수준 높은 방화벽 구성에는 iptables 룰을 직접 사용해야 합

webdir.tistory.com

  • 공유기를 사용하는 중이라면 3306을 포트포워딩을 해주세요.
 

원격 Mysql 이용하기

개발을 하면서, 부득이하게 이곳저곳을 옮겨다닐 경우, 그렇지 않더라도 DB구조를 자주 바꿔야 하는데, ...

blog.naver.com

기본 포트 확인

$sudo mysql  #mysql 접속
mysql> SHOW GLOBAL VARIABLES LIKE 'PORT';

#결과
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| port          | 3306  |
+---------------+-------+
  • 아래 명령어로 확인하는 방법도 있다고 합니다. 하지만 이렇게 확인한 port 번호가 3306이 아니였어도 큰 문제는 없었습니다.
$mysql server status
#결과 중 port 를 확인한다.   혹은
$mysql server status|grep port

#포트번호 바꾸기
$sudo nano /etc/mysql/my.cnf
port =3306  주석을 해제합니다.
$service mysql restart
  • 이 포트가 어떤 의미가 있는지는 서칭을 해도 나오지는 않았습니다.

감사합니다!

반응형
Comments