일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- MySQL
- Bull
- OCR
- 게임
- react
- Dinosaur
- mongoose
- Sequelize
- Nest.js
- Express
- 정렬
- dfs
- jest
- typeORM
- game
- 공룡게임
- cookie
- Queue
- AWS
- GIT
- nodejs
- JavaScript
- 자료구조
- flask
- Python
- nestjs
- TypeScript
- MongoDB
- class
- Today
- Total
목록MySQL (12)
포시코딩
SELECT u.userIdx, u.name, ( SELECT GROUP_CONCAT(c.name SEPARATOR ',') FROM userCountries uc JOIN country c ON uc.countryIdx = c.countryIdx WHERE uc.userIdx = u.userIdx ) AS countries FROM users u 만약 국가 뿐 아니라 성격, 취미 등과 같은 테이블이 추가되어 위와 같이 계속해서 서브쿼리를 사용하게 되면 쿼리 성능이 안좋아지기 때문에 애초에 LEFT JOIN을 활용하는 방법을 사용한다. SELECT u.userIdx, u.name, GROUP_CONCAT(c.name SEPARATOR ',') AS countries FROM users u LEFT JOI..
Dump database from Docker docker exec {container} /usr/bin/mysqldump -u {username} --password={password} {database} > {filename}.sql Restore database using Docker cat filename.sql | docker exec -i {container} /usr/bin/mysql -u {username} --password={password} {database_name} --verbose --verbose, -v: 커맨드가 실행되는 동안 어떤 작업이 진행되고 있는지 상세 정보를 출력 * mariadb일 경우 /usr/bin/mysql 대신 mariadb-dump를 쓰면 된다고 한다. 설..
개요 회사에서 DBeaver를 통해 카페24 측 DB에 접속했더니 위와 같이 한글이 다 깨져서 나오고 있었다. 일단 실제 사용자 입장에서 한글이 깨진다는 보고는 없었기에 내 컴퓨터나 DBeaver 등 무슨 설정 관련해서 이상한듯 싶었음 문제 확인 SHOW variables LIKE 'c%'; 한글이 잘 나오는 서버 디비와 비교해보니 위와 같이 일정 부분 다르다는 것을 확인할 수 있었다. 그렇게 몇가지 확인해보니 MySQL에 대해 MariaDB 드라이버를 사용하는 문제와 해당 카페24의 MySQL이 옛날 버전이라 현재 내가 사용하는 버전이 최신이어서 발생하는 문제 두가지가 같이 발생하는 것으로 파악됐다. 해결방법 MySQL 선택 하단 Driver Settings로 들어간다. 들어간 후 Libraries에서..
docker exec -it {CONTAINER_ID} bash 뒤에 bash 대신 /bin/bash 를 쓰는걸로 알고 있었는데 그냥 bash를 붙이면 컨테이너 내에서 기본적으로 사용되는 셸을 사용하게 되는데 대부분의 Linux 컨테이너에서는 기본 셸로 Bash를 사용하므로 위와 같이 사용해도 무방하다. 이건 컨테이너 접속이지 MySQL 접속은 아니어서 mysql -u root -p 마저 DB로 접속해준다. 비밀번호 입력하면 끝 * 참고로 DBeaver 등 Database Tool에선 localhost로 docker 생각안하고 접속해도 잘 된다.
문제 확인 CodeIgniter3 로 만들어진 기존 프로젝트가 이상하게 내 local DB와 연결할 때 제대로 안켜지는 문제를 겪었다. 계속 헤매다 로그도 제대로 출력이 안되고 있어서 확인해봤더니 모든 로그를 출력하지 않는게 기본 설정이었음 application/config/config.php // $config['log_threshold'] = 0; $config['log_threshold'] = 4; 0은 로그 비활성화 4로 설정하면 모든 메시지 기록이다. 출처: https://extbrain.tistory.com/108 로그 확인 ERROR - 2023-08-16 03:26:49 --> Severity: error --> Exception: Expression #1 of SELECT list is ..
https://myinfrabox.tistory.com/213 [MySQL] mysql shell(mysqlsh) 설치 및 사용방법 ■ MySQL Shell 설치 ▶︎ 설치 방법 • 다운로드 URL https://dev.mysql.com/downloads/shell/ OS와 플랫폼에 맞는 버전을 다운로드합니다. 여기서는 CentOS 7에 설치하는 방법을 알아봅니다.. 위의 경로에 접속 후 myinfrabox.tistory.com
ERD (Entity Relationship Diagram) 개체 관계 다이어그램 엔티티 (Entity) 개념적으로 혹은 실제로 존재하는 개체 고유해야한다. 예시 리스트: 연구직, 생산직, 판매직, ... 개념별: 프로젝트, 스토리, 태스크, ... 애트리뷰트 (Attribute) 엔티티의 구성 요소 예시 프로젝트를 구성하는 요소 프로젝트 번호 프로젝트 이름 프로젝트 시작일 프로젝트 종료일 프로젝트 목표 최종 책임자 프로젝트 단가 테이블 프로젝트 번호(FK. 위 프로젝트 테이블에서) 계약금 금액 계약금 납입일자 중도금 금액 중도금 납입일자 잔금 금액 잔금 납입일자 릴레이션 (Relation) 엔티티와 엔티티의 관계를 나타내는 것. 보통 카디널리티 비율로 표기한다. 카디널리티 비율: 1:1, 1:N, M:..
# mysql 접속 (커맨드창) mysql -uroot -p > 비밀번호 입력 # 데이터베이스 확인 SHOW DATABASES; # mysql 데이터 베이스 USE mysql; # 선택된 데이터베이스 확인 SELECT DATABASE(); # 현재 유저 확인 SELECT USER(); # user 테이블 살펴보기 SELECT Host, `User` FROM USER; # sparta 계정 삭제 (sparta 계정 있을시) DROP USER sparta@localhost; # 사용자 추가 CREATE USER 'sparta'@'localhost' identified BY '12345678'; # 패스워드 정책 에러시(mysql8) set global validate_password.policy=LOW; #..
1. 비밀번호 변경 mysql> ALTER user 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '변경 비밀번호'; 2. 변경사항 저장 mysql> FLUSH PRIVILEGES; 3. 변경 확인 mysql> quit > mysql -u root -p Enter password: (새 비밀번호 입력)
문제 발생 DROP TABLE user; 테이블이 이상해서 날리려는데 저 sql문을 실행한 후로 MySQL이 바보가 되버렸다. 종속된 FK들이 문제가 발생해 일어나는 일인데 user의 field와 종속된 테이블들을 먼저 삭제하거나 FK를 없애주고나서 user 테이블 삭제를 시도했어야 했다. 해결방법 일단 멈춰버린 MySQL을 되돌리기 위해서는 원인이 된 삭제 프로세스를 강제로 끄면 된다. SHOW PROCESSLIST; 다음과 같이 프로세스 목록을 보고 Sleep 상태인 것들을 강제로 종료시켜준다. KILL 24; KILL 25; KILL 26; KILL 28; 이후 멈춤 현상이 풀린걸 확인한 후 종속된 문제를 해결하고나서 다시 삭제를 시도하면 된다. https://stackoverflow.com/que..