Database/MySQL 8

[MySQL 8.0] phpMyAdmin 로그인 불가 (phpmyadmin Access denied for user 'root'@'localhost')

phpMyAdmin 로그인 불가 (phpmyadmin Access denied for user 'root'@'localhost') MySQL 계정이 정확한데 phpmyadmin에 로그인할 수 없을 경우 아래 내용처럼 루트 계정의 인증 방식을 변경하여 해결될 수 있습니다. 아래 쿼리를 입력한 후 로그인 하려는 root@localhost의 plugin이 auth_socket으로 되어있는지 확인 합니다. SELECT user,plugin,host FROM mysql.user WHERE user = 'root'; 아래 쿼리를 입력하여 mysql_native_password로 인증 방법이 변경 되었는지 확인 후 phpmyadmin에 로그인을 시도 해보시면 됩니다. ALTER USER 'root'@'localhos..

Database/MySQL 2021.10.08

[MySQL 8.0] MySQL binlog 삭제 및 기간 설정 (remove binlog mysql 8)

MySQL binlog 삭제 및 기간 설정 (remove binlog mysql 8) MySQL binlog는 바이너리 로그로써 특정 기간을 정해주지 않으면 계속해서 쌓입니다. 용량 관리를 위해 바이너리 로그를 백업 또는 삭제를 주기적으로 될 수 있도록 해주어야 합니다. ※ 바이너리 로그란? MySQL 서버의 DDL, DML을 통해 수정, 업데이트 등을 진행했을 때 변화된 이벤트를 기록하는 이진 파일 입니다. 해당 파일은 일반적으로 replication 구성 또는 특정 시점으로의 복원할 때 사용 됩니다. 1. 바이너리 로그 조회 및 삭제 아래 명령어를 사용하여 바이너리 로그 조회 및 삭제를 할 수 있습니다. # binary log 조회 show binary logs; # binlog.000004 이전 b..

Database/MySQL 2021.07.16

[MySQL] MySQL Slow Query Log 설정 방법

MySQL Slow Query Log 설정 방법 mysql -u root -p 를 이용해 접속 후 show variables like 'slow_query_%';를 입력하면 아래와 같은 화면이 출력 됩니다. OFF 상태일 경우 현재 Slow Query Log 설정이 되어있지 않은 상태인 것 입니다. mysql> show variables like 'slow_query_%'; +---------------------+-------------------------------+ | Variable_name | Value | +---------------------+-------------------------------+ | slow_query_log | OFF | | slow_query_log_file | ..

Database/MySQL 2020.05.22

[MySQL] MySQL 데이터 백업 단방향 이중화 (Replication Master & Slave)

MySQL Replication MySQL Replication은 Master & Slave 구성하여 Master DB의 변경된 데이터를 바이너리 로그로 생성하여 Slave 서버로 전달하여 Slave 서버에서는 바이너리 로그를 데이터로 반영 합니다. Master 1 : n Slave 구성이 가능 하며 설정 전에 당연히 MySQL 포트(기본 3306)를 오픈 시켜두어야 합니다. 만약 MySQL 설치가 안되어 있다면 아래 링크를 참고 해주세요. MySQL 설치 : https://nirsa.tistory.com/124?category=870931 Master DB 설정 아래와 같이 /etc/my.cnf 기본 설정을 진행 후 mysqld를 재시작 해줍니다. vi /etc/my.cnf # 저는 가장 아래 부분에 ..

Database/MySQL 2020.02.21

[MySQL] CentOS 7 MySQL 설치

CentOS7 버전부터는 MariaDB가 디폴트로 설정되어 있어서 따로 설정 후 다운로드 받아야 합니다. yum -y install http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm yum -y install mysql-community-server systemctl start mysqld systemctl enable mysqld 또한 MySQL은 최근에 보안 문제로 인해 초기 패스워드를 로그 파일에 남기며 대소문자,숫자,특수문자를 포함하여 8자 이상만 사용이 가능하도록 바뀌었습니다. cat /var/log/mysql.log | grep 'temporary password' 를 입력하여 초기 패스워드 확인 후 mysql 로그인을 ..

Database/MySQL 2020.02.10

[MySQL] 패스워드 노출 경고 (Mysql 5.6 Warning: Using a password on the command line interface can be insecure.)

bash shell script 실행하거나 mysqldump 사용 시 패스워드 노출 위험 문구(mysql_config_editor set --login-path=root --host=localhost --user=root --password)가 출력 됩니다. 무시해도 상관은 없으나 이 메세지가 출력되지 않도록 하고 싶을 시 리눅스 쉘상에서 아래 명령을 입력 후 패스워드를 한번 입력 해주시면 됩니다. 아래 명령은 패스워드를 미리 입력하고 필요할 때 호출하여 사용하는 방법 입니다. mysql_config_editor set --login-path=root --host=localhost --user=root --password Enter password: (패스워드 입력) --login-path : 필요할 때..

Database/MySQL 2020.02.10

[MySQL] Workbench 문법 에러 (Error Code: 1064. Syntax error near 'VISIBLE' 또는 'INVISIBLE')

일반적으로 Error Code: 1064. Syntax 에러가 발생하면 문법 문제 입니다. 하지만 "Error Code: 1064. Syntax error near 'VISIBLE' 또는 'INVISIBLE'" 에러가 발생할 때 MySQL Workbench를 서버 접속 용도로 사용하고 다른 서버의 MySQL에 접근한다면 MySQL의 버전을 확인해봐야 할 필요성이 있습니다. MySQL Workbench의 버전과 MySQL 서버의 버전 차이로 인해 문법이 달라질 수 있습니다. (ex. MySQL Workbench 버전은 8.0인데, MySQL 서버의 버전은 5.7인 경우) 아래는 MySQL 8.0 공식 홈페이지 메뉴얼의 CREATE INDEX문 내용중의 일부 입니다. 문제가 되는 부분은 에러 내용을 보앗을때..

Database/MySQL 2020.02.04

[MySQL] access denied for user 'root'@'localhost' 해결 방법 (Centos7)

Centos7 버전에 MySQL을 설치하고 mysql 명령으로 진입하려하면 access denied for user 'root'@'localhost' 에러가 발생 합니다. 어느 버전부터 이렇게 바꼇는지는 모르겠지만 mysql 설치 후 root 계정의 패스워드가 임의로 변경되어 로그파일에 남겨진다고 합니다. 아래 명령어를 입력하면 임의로 설정된 root 계정 패스워드를 확인할 수 있습니다. cat /var/log/mysqld.log | grep 'temporary password' 빨간색으로 테두친 부분이 패스워드이므로 이제 mysql -u root -p 명령어로 패스워드를 입력하고 접속을 시도하면 정상적으로 로그인 되는것을 확인할 수 있습니다. 하지만 로그인 후 정상적인 이용이 불가능한데, mysql에서..

Database/MySQL 2020.01.23