일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
- log_bin
- nodejs
- MySQL
- mysql 5.5
- JavaScript
- eslint
- current_date
- Regular expression
- 퀵소트
- log4j2
- Webpack
- Chunk
- Effective Java
- 정규표현식
- Spring Batch
- regex
- Effective Java 3/e
- git
- expire_logs_days
- java
- spring
- Express
- npm
- REACTJS
- update
- spring cloud
- migration
- Node
- upgrade
- REACT
- Today
- Total
목록Technical (94)
내 세상
현재 사용 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로 처리했을 경우..
kafkaJs: 2.2.0 (https://www.npmjs.com/package/kafkajs)Winston Logger: 3.2.1 (https://www.npmjs.com/package/winston) kafka Constructor를 사용한 Kafka 전반적인 환경설정clientId: Kafka Broker로 전달되는 모든 request에 대한 identifierbrokers: Kafka Broker의 주소, ex) [ "111.112.113.114:9095", "111.112.113.115:9095", ... ]connectionTimeout: Kafka connection을 위해 대기하는 시간 (default: 1000, ms 단위)retryinitialRetryTime: Connection..
EX) [2021-12-10][16:04:32] 와 같은 Date에 대괄호가 쳐져있을 때의 처리 대괄호를 제거 하여 내부의 값을 빼어내기 위함. let splitDate = exampleDate.match(/\[[^\]]*\]/g); const startDate = splitDate[0].replace(/[\[\]]/g, ""); const startTime = splitDate[1].replace(/[\[\]]/g, ""); 위의 예시 [2021-12-10][16:04:32] 를 적용할 경우, splitDate = [ "[2021-12-01]", "[16:04:32]" ]; // Array startDate = "2021-12-01"; startTime = "16:04:32";
Node.js 마이크로 서비스 코딩 공작소 中 6.1 마이크로서비스와 분산 아키텍처 Monolithic architecture 모든 기능을 하나의 프로세스로 구성하기 때문에 장애 상황에 취약함. 장애 발생시, 전체 서비스가 중단되기 때문에 피해 심각함.
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 에서 만들..
process.nextTick 함수 내부에서 비동기적으로 callback을 하기 위해서 사용해야함. 특정 함수를 호출하기 전 CPU가 다른 높은 우선순위의 명령을 수행하게 함. 비동기 처리를 위해 Node.js 내부의 스레드 풀로 다른 스레드 위에서 callback 함수를 동작함. 그렇기 때문에, try~catch 문은 같은 thread 위에서만 동작하기 때문에 서로 다른 thread간의 예외 처리 불가능. uncaughtException Node.js는 single thread 기반으로 동작함. 단, single thread라고 해서 모두 같은 thread 위에서 동작하지 않음. 그러므로 try~catch문으로 모든 예외 처리를 하기에는 무리가 있음. Node.js에서는 모든 thread에서 예외 처리..
// JQuery keyup function Implementation $(document).ready(function(){ $("#sampleID_One").keyup({param1: "BABO", param2: "TEST"}, otherFunction); // pass param $("#sampleID_Two").keyup(otherFunction); // just call function })); // other function implementation function otherFunction(e){ let sampleID = e.target.id; let targetValue = e.target.value; let param1 = e.data ? e.data.param1 : ""; let par..
Shell Script 또는 rc.local에서 Exception 처리가 필요할 때가 있음. rc.local의 경우, 중간에 permission denied와 같은 에러가 발생했을 때 rc.local service가 정상적으로 올라오지 않는다. service가 정상적으로 올라오지 않을 때는 아래 명령어로 확인 가능. systemctl status rc-local 또는 journalctl -xe Exception 처리는 아래와 같이 처리 가능함. echo "Start" echo 1 > /sys/babo if [ $? -eq 0 ];then echo "CMD OK" else echo "CMD Fail" fi echo "Finish" 위 코드는 1을 /sys/babo에 echo하는 코드이다. 코드의 위/아래 ..
SELECT TestA as ta, TestB as tb, TestC, TestD, RANK_NUM FROM (SELECT *, (CASE @groupColumn WHEN column1 THEN @rowNum:=@rowNum+1 ELSE @rowNum:=1 END) AS RANK_NUM, (@groupColumn:=column1) FROM noname_table ORDER BY column1, column2 desc ) AS rankTable WHERE RANK_NUM
줄번호 보이기 :set nu 줄번호 감추기 :set nonu 자동 줄바꿈 설정 :set wrap 자동 줄바꿈 해제 :set nowrap
DELIMITER $$ DROP PROCEDURE IF EXISTS loopFunction$$ -- 같은 이름의 PROCEDURE를 삭제한다. CREATE PROCEDURE loopInsert() -- loopInsert 만들기 BEGIN DECLARE i INT DEFAULT 128; -- i 시작점 128 WHILE i
관리자 모드로 PowerShell을 실행 후 dism /online /Enable-Feature /FeatureName:TelnetClient
private HttpHeaders makeHttpHeaders(String filename) { HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); headers.set(HttpHeaders.CONTENT_DISPOSITION, "attachment;filename=\"" + filename + "\";"); headers.set(HttpHeaders.TRANSFER_ENCODING, "binary"); return headers; } private ResponseEntity downloadFile(HttpServletRequest request, Map map, String..
Base62 - 문자나 일반 데이터를 Base 62 색인표를 기반으로 인코딩하는 방식. - Base64에서 62번째(+), 63번째(/) 기호는 url에서 parameter로 사용할 수 없기 때문에, 제외한 것. - cf) Base64 Url Safe 버전이 있음. ( +(plus) 기호 → -(minus)기호, /(divide) 기호 → _(underline) 기호 ) 랜덤성을 위해 base62 문자열 위치 변경 AS-IS: abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ TO-BE: aZbYc0XdWeV1fUgTh2SiRjQ3kPlOm4NnMoL5pKqJr6IsHtG7uFvEw8DxCyB9zA @Service public class Ba..
1. MySQL Stop 2. MySQL의 Data를 원하는 경로로 복사함. 3. 복사한 폴더의 사용 권한에서 NETWORK SERVICE를 추가하여 모든 권한을 부여함. 4. my.ini에서 [mysqld] 아래에 datadir="D:/MySQL Server 5.5/data" 를 추가하고 저장 5. MySQL Start Windows의 서비스에서 MySQL을 찾아보면, "다음 사용자로 로그온" 항목에 "Network Service"라고 되어있음. 그렇기 때문에 신규로 사용할 datadir에 대해서 해당 계정에 대한 권한을 부여해야함. 부여하지 않을 시, 에러 발생하여 실행되지 않음.