"Mariadb"의 두 판 사이의 차이

Pywiki
둘러보기로 가기 검색하러 가기
 
14번째 줄: 14번째 줄:
  
 
== 리눅스에서 ==
 
== 리눅스에서 ==
mysql과 동일하다.
+
기본적으로 접속은 localhost에서만 가능하다. 외부접속을 위해선 2가지 과정이 필요하다.
 +
{| class="wikitable"
 +
!과정
 +
!설명
 +
|-
 +
|외부에서 접속 가능한 계정 만들기
 +
|mysql -u root -p 로 mysql을 실행한 후 <code>SELECT User, Host, plugin FROM mysql.user;</code>를 쳐보면, Host가 localhost로 되어있을 것이다.
 +
새로운 ip에 맞게 유저를 만들어주어야 한다.(같은 유저라도 호스트에 따라 다른 계정이 된다.)
 +
{| class="wikitable"
 +
!과정
 +
!설명
 +
!
 +
|-
 +
|계정 만들기
 +
|CREATE USER '계정명'@'%' IDENTIFIED BY '비밀번호';
  
 +
 +
계정명 뒤의 옵션에 따라 허용해주는 ip가 달라진다.
 +
{| class="wikitable"
 +
!옵션
 +
!설명
 +
|-
 +
|%
 +
|모든 아이피 허용
 +
|-
 +
|111.222.%
 +
|111.222로 시작하는 아이피 모두 허용
 +
|-
 +
|111.222.11.22
 +
|111.222.11.22만 허용
 +
|}
 +
|
 +
|-
 +
|권한부여
 +
|*.* 은 모든 DB의 모든 table을 의미한다.
 +
|GRANT ALL PRIVILEGES ON *.* TO '계정'@'%';
 +
|-
 +
|인증비밀번호설정
 +
|비밀번호까지 다시 설정해주어야 제대로 된다.
 +
|update user set password=PASSWORD('비밀번호') where user='계정';
 +
 +
 +
최신버전이라면 해당 계정으로 접속한 후에
 +
 +
set password=password('비밀번호');
 +
|}
 +
|-
 +
|바인드주소 지우기
 +
|/etc/mysql/mariadb.conf.d 에서 50-server.cnf 파일을 편집한다.(버전, 운영체제 버전에 따라 다를 수 있다.)
 +
바인드 어드레스를 다음과 같이 주석처리한 후 저장. ''#bind-address            = 127.0.0.1''
 +
 +
이후 sudo service mysql restart
 +
|}
 +
===mysql 포트 확인===
 +
mysql에 접속한 후 <code>mysql> show global variables like 'port';</code> 명령어로 사용하고 있는 포트번호를 알 수 있다.(일반적으로 3306)
 
= 백업 =
 
= 백업 =
 
mysqldump도 먹긴 하지만, 어째서인지 복원하고 나면 기존 DB보다 크기가 커지고, 행의 갯수가 달라지는 경우가 생긴다. 때문에 이곳에선 mariabackup에 대해 안내한다.
 
mysqldump도 먹긴 하지만, 어째서인지 복원하고 나면 기존 DB보다 크기가 커지고, 행의 갯수가 달라지는 경우가 생긴다. 때문에 이곳에선 mariabackup에 대해 안내한다.

2022년 4월 4일 (월) 19:16 기준 최신판

1 개요[편집 | 원본 편집]

mysql과 유사한..(하지만, 더 사용하기 용이한..) DB.(언젠가 mysql과 함께 다른 위키로 옮기는 건 어떨까...?)

2 외부접속 허용하기[편집 | 원본 편집]

2.1 윈도우에서[편집 | 원본 편집]

먼저 포트포워딩이 진행되어야 한다. 기본 포트는 mySQL과 동일하게 3306.

mariaDB를 설치하면 MySQL Client(MariaDB *.*)가 함께 설치된다. 이걸 실행한 후 다음과 같이 명령하면 된다.

GRANT ALL ON *.* TO username@'address' IDENTIFIED BY 'passw0rd';

모든 ip에서 허용해 주려면 address 대신 %를 넣으면 된다.(192.168.%.% 형태의 바리에이션도 가능하다.)

2.2 리눅스에서[편집 | 원본 편집]

기본적으로 접속은 localhost에서만 가능하다. 외부접속을 위해선 2가지 과정이 필요하다.

과정 설명
외부에서 접속 가능한 계정 만들기 mysql -u root -p 로 mysql을 실행한 후 SELECT User, Host, plugin FROM mysql.user;를 쳐보면, Host가 localhost로 되어있을 것이다.

새로운 ip에 맞게 유저를 만들어주어야 한다.(같은 유저라도 호스트에 따라 다른 계정이 된다.)

과정 설명
계정 만들기 CREATE USER '계정명'@'%' IDENTIFIED BY '비밀번호';


계정명 뒤의 옵션에 따라 허용해주는 ip가 달라진다.

옵션 설명
% 모든 아이피 허용
111.222.% 111.222로 시작하는 아이피 모두 허용
111.222.11.22 111.222.11.22만 허용
권한부여 *.* 은 모든 DB의 모든 table을 의미한다. GRANT ALL PRIVILEGES ON *.* TO '계정'@'%';
인증비밀번호설정 비밀번호까지 다시 설정해주어야 제대로 된다. update user set password=PASSWORD('비밀번호') where user='계정';


최신버전이라면 해당 계정으로 접속한 후에

set password=password('비밀번호');

바인드주소 지우기 /etc/mysql/mariadb.conf.d 에서 50-server.cnf 파일을 편집한다.(버전, 운영체제 버전에 따라 다를 수 있다.)

바인드 어드레스를 다음과 같이 주석처리한 후 저장. #bind-address = 127.0.0.1

이후 sudo service mysql restart

2.2.1 mysql 포트 확인[편집 | 원본 편집]

mysql에 접속한 후 mysql> show global variables like 'port'; 명령어로 사용하고 있는 포트번호를 알 수 있다.(일반적으로 3306)

3 백업[편집 | 원본 편집]

mysqldump도 먹긴 하지만, 어째서인지 복원하고 나면 기존 DB보다 크기가 커지고, 행의 갯수가 달라지는 경우가 생긴다. 때문에 이곳에선 mariabackup에 대해 안내한다.

3.1 백업[편집 | 원본 편집]

백업파일 경로는 비어있거나 없는 디렉터리어야 한다.

mariabackup --backup --target-dir=경로 -u 사용자계정 -p 비밀번호