
현재 설정된 root 의 비밀번호 입력

root 비밀번호 변경 여부

사용자 삭제 여부

root의 원격 접속을 거부 설정 하는 유무

처음 설치하면 mysql, test 데이베이스가 존재하는데 test 데이터베이스 쓰지 않으면 삭제

적용
설정 중 잘못 입력 됐으면 Ctrl + C 빠져나온 후 다시 초기설정 하면 됩니다!
mysqldump : 지정된 데이터베이스에 테이블의 내용을 화면에 출력
모니터에 출력되는 내용을 파일 형태로 저장하는 과정이 필요한데 리다이렉션을 통해서 구현
리다이렉션
출력의 방향을 바꿔주는 기술
리눅스의 표준 출력장치 stdOut는 모니터
기호는 <<, <, >, >>

echo : 문자열이나 변수의 값을 출력

touch : 비어 있는 파일 만드는 명령어
touch 파일명
test.txt 파일 내용에 아무것도 없어서 내용이 나오지 않는다

1을 출력하지 않고, test.txt 방향 바꿔서 보낸다는 뜻

1이 출력되는 걸 볼 수 있다


1이 사라지고 2가 출력


모니터로 출력하지 않고 파일로 출력하는 리다이렉트 기호
'>' 는 기존 파일 내용을 없애고 파일에 입력
'>>' 는 기존 파일 내용을 유지하고 새로 추가

화면에 모든 데이터베이스 내용이 출력되지 않지만 리다이렉션에 의해서 파일에 내용이 저장 된다
특정 데이터베이스만 백업을 하려고 할 때

특정 데이터베이스에 특정 테이블 하나만 백업하려고 할 때





특정 id 사라져서 비어있다고 나타난다


다시 select 문 사용해서 조회하면 복구된 걸 볼 수있다
서버의 이중화란 하나의 데이터베이스 서버와 똑같은 내용을 가진 데이터베이스 서버를 운영하는 것
Master 로 설정된 데이터베이스에서 데이터베이스 테이블을 생성하면
Slave 데이터베이스에 자동으로 생성이 된다
두 대의 리눅스 머신이 필요해서 기존에 사용하던 WebServer 를 Slave로 동작하고 DB를 Master로 동작!
1에서 클라이언트 패키지인 mariadb는 설치했었기 때문에 mariadb-server만 설치
이중화 설정 전 Slave 로 사용할 머신 WebServer에도 DB 설정을 해줘야 한다

22번 라인 : default-character-set = utf8

30번 라인 : skip-name-resolve
31번 라인 : character-set-server = utf8

48번 라인 : Slave DB로 구분하기 위해 2로 변경

51번 라인 : log-bin=mysql-bin 주석 # 지우기

54번 라인 : binlog_format=mixed 주석(#) 해제(지우기!)
55번 라인: max_binlog_size = 1000M
56번 라인: expire_logs_days = 14
Esc -> :wq

. : 모든 데이터베이스를 의미


51번 라인 : log-bin=mysql-bin 주석 해제
54번 라인 : binlog_format=mixed 주석 해제

55번 라인 : max_binlog_size = 1000M
56번 라인 : expire_logs_days = 14
Master 에서 log_file 과 Position 확인하고 Slave 에 동기화 시켜줘야 한다

테이블 구조로 Master 상태를 보여주는데
이 때, File과 Position 정보를 기억 해야 한다.
log_File은 MariaDB를 시작할 때마다 파일명이 변경되고,
Position은 SQL 쿼리를 처리하면 변경이 됨.

줄 형태로 표현 된다

chang master to master_host='DB IP주소',
master_user='slaveroot',
master_password='1234',
master_port=3306,
master_log_file='Master 서버의 log_file 값',
master_log_pos=Master 서버의 Position 값;

YES가 되어있어야 되는데 No..
구성되지 않을 때 조치사항
Slave 인 WebServer 서버에서
방향키 ↑ 다시 change 로 시작하는 구문 실행 한 다음

YES 로 바뀐걸 볼 수 있다!