일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 웹소켓 api
- innodb_buffer_pool_size 오류
- MySQL
- 업비트 웹소켓
- django slack
- sed명령어
- 비즈니스적 관점에서 생각하는 개발자
- add colume
- django #django 5.0 #django 5.0 요약
- 개발자와 비즈니스
- AWS Aurora
- 개발자에세이
- #알고리즘
- 비즈니스적 관점에서 생각하는 개발자 #개발자 마인드
- 슬랙봇
- #백준 #드래곤커브 #알고리즘
- 정렬
- #데이터베이스 #트랜잭션 #ACID #격리수준
- 데이터베이스 오류
- django slack bot
- public.pem
- 비즈니스
- private.pem
- 개발자와 비즈니스 관계
- 개발자의 마인드
- ssl.key
- 숲을 바라보는 개발자
- django 슬랙봇
- slack bot
- 알고리즘
- Today
- Total
Info-Tech
ssl.key 혹은 crt 확장자로 된 인증서를 base64로 인코딩 된 pem 파일 만들기 openssl rsa -in ssl.key -text > private.pem openssl x509 -inform PEM -in server.crt > public.pem 내용은 이런식으로 가져오기 : cat private.pem | pbcopy
문제상황 약 3gb가 넘는 table에 새로운 컬럼을 하나 추가해야하는 상황이었다. (대략 4억 이상의 데이터 값들이 들어있음) 첫번째. 처음에는 아무생각없이 아래와 같은 방법으로 컬럼을 추가해봤다. alter table ~~ add new_colume after ~~ 도저히 끝날 기미가 보이지 않고, 실제 운영중인 서비스이기 때문에 최대한 lock (downtime)이 걸리면 안되었다. 두번째. 갓 스택오버플로우의 검색결과 abc라는 테이블에 컬럼을 추가한다고 했을 때, abc_v2 테이블을 하나 만들고 여기다가 colume 추가 후 abc의 값들을 abc_v2로 옮기는 방법이다. 30분씩 50만개씩 쉬지않고 data를 옮긴다고 가정했을 때, 4억 / 50만개 = 24000분 => 400시간 => 16..
어느날 갑자기 디비 서버접속이 안되는 경우가 발생 mysql의 error.log를 살펴본 결과 아래와 같은 로그가 발생함. 2018-11-28 08:12:00 7805 [Note] Plugin 'FEDERATED' is disabled. 2018-11-28 08:12:00 7805 [ERROR] Function 'innodb' already exists 2018-11-28 08:12:00 7805 [Warning] Couldn't load plugin named 'innodb' with soname 'ha_innodb.so'. 2018-11-28 08:12:00 7805 [ERROR] Function 'federated' already exists 2018-11-28 08:12:00 7805 [Warni..
선택정렬은 첫번째에 인덱스의 값을 선택후 내부 반복을 통해 ‘최소값’을 찾는다. 오른쪽으로 계속 이동하여 ‘최소값’일 경우 위치를 스왑한다. [10 , 8 , 3 , 1, 5]가 있다고 가정한다. 최초로 10이 선택되어 진다. [8,3,1,5] 에서는 최소값이 1이다. 즉 선택된 ’10’은 8부터 시작해 최소값 인 ‘1’과 자리를 바꾸게 된다. 1회전 결과 -> [1,8,3,10,5] 두번째는 8이 선택되어 진다. [3,10,5] 에서 최솟값은 ‘3’이다. 8과 3이 자리를 바꾸게 된다. 2회전 결과 -> [1,3,8,10,5] 3번째는 다시 8이 선택되어 진다. [10,5] 에서 최솟값은 ‘5’이다. 8과 5가 자리를 바꾸게 된다. 3회전 결과 -> [1,3,5,10,8] 4번째는 10이 선택되어 진다..
삽입정렬 2번째 자료부터 자기 바로 왼쪽 부터 index가 0이 될때까지 비교하는 방법. [2,5,3,4,1] 첫번째로 5(2번째 자료)가 선택되어 진다.
객체지향적 언어 예를들어 하나의 자동차를 만드는 공장이라고 생각하자. 자동차를 이루는 구성품은 바퀴, 몸체, 엔진, 창문 등등이 있다. 객체지향적은 이러한 객체(구성품)을 먼저 설계하고 적절히 조합을 하여 하나의 프로그램으로 완성시키는 기법이다. (절차 지향적은 바퀴 -> 몸체 -> 엔진 ->창문 이렇게 순서대로 절차를 거쳐서 만들어야함, 하나가 고장나면 전체가 고장 나게 설게 될 수도 있다) 이러한 객체지향의 특성에는 크게 3가지가 있다. 상속 - 공통적인 내용을 담는 상위 class를 선언 후 하위 클래스에서 상속 받아서 쓸 수 있다 (extends 사용) //Car라는 상위 클래스 선언 class Car{ private String model; protected int wheelCount; publ..
20GB가 넘는 db를 테스트 서버로 이동 한 후 다시 import 해야하는 상황이 생겼다. 첫번째 시도 맨 처음 아무런 옵션없이 이런식으로 넣어주었다. 1시간이 지나도 아무런 반응이 없었다.. 뭔가 잘못되어가는 느낌 (용량이 거대해서 기다리는 시간이 큰 느낌이었습니다) myslq -u root -p ‘db table’ < backup.sql 두번째 시도 https://support.tigertech.net/mysql-large-insertshttps://manios.org/2013/03/19/import-a-large-sql-dump-file-to-a-mysql-database-from-command-line 위의 링크를 참조한 결과 set global net_buffer_length=1000000; ..
mysql dump 하는 대표적인 방법 옵션의미Default비고 -A, --all-databases모든 db dump -l, --lock-tablesLock all tables for read.O--skip-lock-tables 로 제외가능 --single-transactionlock 을 걸지 않고도 dump 파일의 정합성 보장XInnoDB 일때만 사용 가능 --master-data이 옵션이 명시되면, dump 파일의 헤더 부분에 CHANGE MASTER TO 구문을 포함시키며,이 구문에는 덤프 시작 시점의 Binary log 파일명과 위치 정보 및 호스트 정보를 포함하고 있다. 이 값을 1로 설정하면 CHANGE MASTER TO 구문이 실제 실행 가능한 형태로 포함되며, 2로 설정되면 SQL 코멘..