설정 / my.ini(Windows) 또는 my.cnf(Linux) 에 추가한다.
리플리케이션 관련 / Error Code: 1062. Duplicate entry '1' for key 'PRIMARY' 애러 방지
slave-skip-errors = 1062
리플리케이션 관련 / 모든 애러 무시
slave-skip-errors = all
애러로그 생성
log-error = /var/lib/mysql/error.log
데드락(deadlock) 발생 방지 / 이것도 해주는게 좋다고 했는데...(CannotAcquireLockException 애러 발생시?)
innodb_lock_wait_timeout = 240
transaction-isolation = READ-COMMITTED
커넥션 최대치
max_connections = 500
백업 설정 확인 명령어?
덤프뜨기 / 백업
mysqldump -u root -p db명 > db명.sql 또는 db명.table명.sql
30일 이전에 로그를 삭제한다.
PURGE MASTER LOGS BEFORE DATE_SUB(CURRENT_DATE, INTERVAL 30 DAY);
커넥션수 확인
show variables like 'max_connections';
커넥션수 확인
show status like 'Max_used_connections';
커넥션수 확인
show status like 'Aborted%';
커넥션수 확인
show status like '%CONNECT%';
기본 팁
삽입 / insert
INSERT INTO 테이블 VALUES (데이터1, 데이터2, 데이터3);
삽입 / insert
INSERT INTO 테이블 (컬럼1, 컬럼2, 컬럼3) VALUES ('컬럼1데이터, 컬럼2데이터, 컬럼3데이터');
삭제 / delete
delete from 테이블;
delete from 테이블 where 컬럼 = '값';
테이블의 컬림 사이즈/크기 를 변경
alter table 테이블명 modify 컬럼명 VARCHAR(50) ;
로컬호스트에만 접속 할 수 있는 계정 생성
grant all privileges on 디비.* to '계정'@'localhost' identified by '비번';
외부접속 할 수 있는 계정 생성?
grant all privileges on 디비.* to '계정'@'%' identified by '비번'
기타
Workbench 에서 삭제/수정 안될때 날려주는 명령어
SET SQL_SAFE_UPDATES = 0;
DB UTF8 문자셋
utf8-general-ci는 utf8-unicode-ci 를 사용해서 정렬할 때 보다 다소 정확도가 떨어지는 경향이 있으나 속도는 빠르다.
MySQL의 경우 utf8-general-ci 가 Default Collation이다.
'IT > SQL' 카테고리의 다른 글
MySQL 페이지 나누기 (0) | 2020.11.05 |
---|---|
MySql schema와 database의 차이점 (0) | 2020.11.05 |