일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- current_date
- regex
- Node
- Effective Java
- update
- 퀵소트
- mysql 5.5
- Regular expression
- spring
- migration
- REACTJS
- MySQL
- java
- Spring Batch
- log_bin
- Webpack
- REACT
- nodejs
- Chunk
- eslint
- spring cloud
- expire_logs_days
- git
- JavaScript
- log4j2
- Effective Java 3/e
- upgrade
- npm
- 정규표현식
- Express
- Today
- Total
목록MySQL (8)
내 세상
NestJS + mysql2 사용시, mysql 객체가 TypeError: Cannot read properties of undefined (reading 'createPool') 에러가 발생하는 경우가 있음. import mysql from "mysql2/promise";const _dbConn = mysql.createPool({});export { _dbConn }; 위와 같이 구현한 경우에 해당 에러가 발생함. 조치 방법은 아래와 같이 as로 import 구문을 변경해주면 됨. import * as mysql from "mysql2/promise";const _dbConn = mysql.createPool({});export { _dbConn };
현재 사용 Mysql Version 5.5 . 8 이상부터는 expire_logs_days가 아님 ! show variables like "expire%"; 환경변수 중 expire로 시작하는 variable을 보여주는 명령어 flush privileges; grant 테이블을 reload함으로 변경사항을 바로 적용해주는 명령어 set global expire_logs_days = 7; Log 파일 만료 기간을 7일로 설정하는 명령어. purge master logs before date_sub(CURRENT_DATE, INTERVAL 7 DAY); Log 파일 중 현재 날짜로 부터 7일이 지난 파일을 삭제하는 명령어 my.ini에는 아래와 같은 줄을 추가해준다. expire_logs_days=7
현재 사용 Mysql Version 5.5 . 8 이상부터는 expire_logs_days가 아님 ! show variables like "expire%"; 환경변수 중 expire로 시작하는 variable을 보여주는 명령어 flush privileges; grant 테이블을 reload함으로 변경사항을 바로 적용해주는 명령어 set global expire_logs_days = 7; Log 파일 만료 기간을 7일로 설정하는 명령어. purge master logs before date_sub(CURRENT_DATE, INTERVAL 7 DAY); Log 파일 중 현재 날짜로 부터 7일이 지난 파일을 삭제하는 명령어 my.ini에는 아래와 같은 줄을 추가해준다. expire_logs_days=7
Partition - MySQL 서버 측에서 data를 여러 table에 분리하여 저장하지만, 사용자 입장에서는 하나의 테이블을 read/write 하듯이 사용할 수 있게 해주는 기능 Partition 사용 이유 - Table Size ↑ 에 따라 Index Size ↑ - Index Size > Memory Size 일 경우, table을 분할하여 index를 각각 생성했을 때 memory로 query를 처리할 수 있음. - Business Logic이나 특정 제도로 인한 필수 보관주기가 지난 데이터의 정리 또는 로그성 데이터의 테이블을 partion으로 관리한다면, 불필요한 데이터 삭제 작업은 단순히 파티션을 추가하거나 삭제하는 방식으로 빠르게 해결할 수 있음 - DML인 Delete로 처리했을 경우..
http://smalldatum.blogspot.com/2017/06/sysbench-for-mysql-50-51-55-56-57-and-8.html Sysbench for MySQL 5.0, 5.1, 5.5, 5.6, 5.7 and 8 Update - the regression isn't as bad as I have been reporting. Read this post to understand why. After sharing results for in-memory s... smalldatum.blogspot.com https://dogcowking.tistory.com/74 MySql 5.1 to 5.6 Upgrade * 개요 - MySql 5.1 에서 5.6 으로 업그레이드 - 5.1 에서 만들..
환경 - Backend: NodeJS (Express) - Frontend: React - Database: MySQL 문제 - Update Query를 각기 다른 여러개의 where 조건으로 매우 많이 진행해야하는 상황이 생김. - 개별로 진행할 경우, Update Timing이 다르기 때문에 실시간 정보를 가져옴에 있어 Delay가 생김. 해결 - Update의 경우 여러개의 where 조건을 사용하여 일괄적으로 사용이 어렵다. - 이때, INSERT INTO 구문을 UPDATE 구분처럼 사용할 수 있는 방안이 있음!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - INSERT INTO를 했을 때, 기존에 Primary key가 겹치는 데이터가 있을 때 특정 칼럼을 업데이트하는 방식임. 만약..
MySQL 에러 Error: ER_TRUNCATED_WRONG_VALUE: Truncated incorrect DOUBLE value 해당 에러는 update set을 할 때, 콤마(,)로 묶어줘야 하는 부분을 and로 묶어 발생하였음. **BEFORE** update sample_table set ip= '1.1.1.2' and protocol = 'ssh' where name = 'sga8' **AFTER** update sample_table set ip= '1.1.1.2' , protocol = 'ssh' where name = 'sga8'
Error: ER_CON_COUNT_ERROR: Too many connections (참고: https://okky.kr/article/527331) 해당 링크에 의하면 3가지의 방법을 사용하여 문제를 해결할 수 있다고 함. 1. max connection세팅 보다 많은 request가 발생하는경우 - 해결책 : max connection을 늘려서 해결 - Linux 환경에서는 구글링하면 쉽게 방법을 찾을 수 있음. - Windows 환경 해결책 1. cmd - "services.msc" 입력하여 MySQL 서비스를 찾음. ( 버전에 따라 다르지만, MySQL57 이런 식으로 되어 있음) 2. MySQL 서비스를 찾은 후, 실행 파일 경로를 분석함. ( "실행 파일 경로" --defaults-file=..