본문 바로가기

Database/MySQL

(4)
MySQL 스토리지 엔진 (InnoDB, MyISAM, 그외...) InnoDB vs MyISAM What's different? InnoDB MyISAM Locking Level Row Table Foreign Key Yes No Transaction Yes No Clustered Index Yes No Full-Text Index Yes (MySQL 5.6~) Yes Geospatial Index Yes (MySQL 5.7~) Yes Storage Limit 64TB 256TB InnoDB 높은 신뢰성과 고성능의 균형을 이루는 범용 스토리지 엔진입니다. 많은 기능을 제공하여 상대적으로 무겁습니다. Row level locking 지원으로 INSERT,UPDATE,DELETE에 유리합니다. write가 많은 서비스에서 유리합니다. 테이블과 인덱스를 테이블 스페이스에 저..
Docker MySQL for Kitematic MySQL 컨테이너 설치 root 패스워드 설정 컨테이너를 설치, 실행하고 로그를 확인하면 이런 로그를 확인할 수 있어요. ROOT 계정의 패스워드를 지정해줘야합니다. Settings - General - Environment Variables 리스트에 MYSQL_ROOT_PASSWORD를 추가해주세요. 그리고 하단의 SAVE 버튼을 누릅니다. Published Port 설정 터미널 접속 exec를 클릭하면 MySQL 서버가 설치된 컨테이너에 터미널 접속을 할 수 있어요. 클라이언트 접속 mysql 8+ 버전을 사용하셨다면 이런 오류가 나올 수 있어요. Public Key Retrieval is not allowed 아래와 같이 접속 클라이언트 쪽에서 설정을 해주어야해요. allowPublicKeyRet..
Docker MySQL 설치, 접속, 자동 재시작 Docker로 MySQL을 설치해볼거에요. 1. MySQL 이미지 가져오기 docker pull mysql 2. 신규 Container 생성, 실행 docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=1234 -d -p 3306:3306 mysql 이제 root 계정으로 접속하면 됩니다. 끝! Docker 컨테이너 자동으로 재시작하고 싶다면 아래와 같이 실행하면 되요. docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=1234 -d -p 3306:3306 -dit --restart unless-stopped mysql 자세한건 링크를 참고해주세요. https://docs.docker.com/config/..
MySQL 사용자 계정 권한 조회/추가/수정/삭제 MySQL에서 사용자 계정 권한을 추가, 수정, 삭제하는 방법이에요. mysql 데이터베이스에서 실행 use mysql; 계정 조회 select * from user; 계정 생성 create user 계정@호스트 identified by 패스워드; create user dbuser@localhost identified by 'password'; -- 로컬에서만 접근 가능 create user dbuser@192.168.1.72 identified by 'password'; -- 특정 IP에서 접근 가능 create user dbuser@'%' identified by 'password'; -- 어디에서나 접근 가능 계정 삭제 drop user 계정@호스트; drop user dbuser@localhost..