일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 애자일
- 안영미
- 박보영
- DI
- 디자인패턴
- 드온
- mssql
- 초감각
- 강유미
- jquery
- SaveFile
- 영어
- 드래곤볼 온라인
- 두뇌코칭
- 2011프로야구
- Oracle
- ajax
- 가톨릭
- Spring
- 십천2
- wbc
- MySQL
- bean
- G포인트
- 십이지천2
- 분장실의강선생님
- 파이썬
- annotation
- Sybase
- Spring4
- Today
- 16
- Total
- 508,224
목록plming/DB (52)
행이네
오늘날짜의 00시 구하기 SELECT SUBTIME( NOW(), TIMEDIFF( NOW(), CAST(DATE(NOW()) AS DATETIME) ) ) ; 오늘날짜의 00시 구하기 (UTC인 시간을 우리나라 시간으로) SELECT SUBTIME( NOW() , TIMEDIFF( CONVERT_TZ(NOW(), @@system_time_zone, 'Asia/Seoul') , CAST(DATE( CONVERT_TZ(NOW(), @@system_time_zone, 'Asia/Seoul') ) AS DATETIME) ) ) ;
DB 시간이 어느 TimeZone인가 확인할 때 SELECT @@system_time_zone ; DB 시간이 우리나라 시간이 아니라면 DB의 현재 시간을, 우리나라 시간으로 바꿔서 조회하고 싶다면 SELECT NOW(), CONVERT_TZ(NOW(), @@system_time_zone, 'Asia/Seoul') ;
시스템 운영시점에서는 설정된 기본값이나 조정된 설정값을 사용하면 되지만 DB에 실행시간이 길게 소요되는 SQL들을 날리며 작업해야하는 DB Setting, Migration등의 경우 DB 자체에서 관리하는 timeout 값들을 변경한 후 작업을 수행하고 작업이 완료되면, 원래 설정값들로 원복하는 것이 정신건강에 좋을 듯 하다. 그렇지 않으면 아래 Error를 작업이 끝날 때까지 만나게 될테니 말이다. (작업이 수행되다 중간에 끊어져버린 것이라... 100을 처리해야 하는 데, 60, 70만 처리되고 끝나버리면 작업을 보정하기 조차 어렵다;;; (정신건강에 안좋음) 60, 70이라도 작업을 초기화해야 할 듯... Error Code: 2013. Lost connection to MySQL server du..
mysql - DB Link, FEDERATED TABLE 생성 (1/2) - 준비 2. DB Link 처리할 TABLE 생성 그렇다. MySQL에서는 TABLE을 만들어야 원격 DB의 해당 TABLE을 접근할 수 있다. 접근할 TABLE을 1:1로 모두 생성시켜야 한다. 2.1. 접속정보를 모두 입력해서 TABLE 생성 CREATE TABLE 테이블명 { ... } ENGINE=FEDERATED ... CONNECTION='mysql://user_name[:password]@host_name[:port_num]/db_name/tbl_name'; ← 접속정보 참고 : https://dev.mysql.com/doc/refman/5.7/en/federated-create-connection.html 하지만,..
Oracle의 DB Link와 동일한 것을 MySQL에서 처리하는 방법이 DB Link시킬 원격테이블을 Local에 FEDERATED Engine을 사용한 TABLE로 생성하는 것이다. 1. 준비 *** Local DB *** 1.1. FEDERATED Engine 사용가능하도록 설정 1.1.1. MySQL에서 FEDERATED Engine 존재여부/상태 확인 -- MySQL 접속 # mysql -u root -p mysql> SHOW ENGINES; +--------------------+---------+ | Engine | Support | +--------------------+---------+ | FEDERATED | YES | ← 이렇게 표시되어야 준비된 것이다. +--------------..
도대체 어떻게 해야하는거냐...;;; netstat -nlt 를 해보면 tcp6 0 0 :::3306 :::* LISTEN tcp로 Listen 되는 3306은 어디가고...;;; 이렇게 되면, 원격에서 아무리 접속하려 해도... mysql -h ip ... ERROR 2003 (HY000): Can't connect to MySQL server on 'ip' (111) ubuntu에서 IPv6를 비활성화하는 방법을 써봤지만... (http://blog.saltfactory.net/disable-ipv6-on-ubuntu/) sudo cat /proc/sys/net/ipv6/conf/all/disable_ipv6 0 나오면... sudo vi /etc/sysctl.conf 내용 추가 후 저장 net.ip..
멀쩡히 잘 되던 MySQL이 MySQL Workbench에서도 접속이 잘 되는데... terminal에서 mysql을 실행하니 Error가 똭~ # mysql ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) ls /var/run/mysqld 해봤더니... 아무것도 없네??? 휑~~ ;;; /etc/init.d/mysql restart 해봤지만 Fail 이 똭~ find / -name '*.sock' 로 해당 파일을 찾아봤지만 mysqld.sock은 찾을길이 없... 이리 저리 수소문 끝에... stop / start를 하나씩 실행했더니... 정상~ # service ..
시간을 더할 때는 DATE_ADD( NOW(), INTERVAL 1 DAY ) 시간을 뺄 때는 DATE_SUB( NOW(), INTERVAL 1 DAY ) DAY 자리에는 초,분,시,일,주,달등의 분류들을 사용할 수 있다. MICROSECOND, SECOND, MINUTE, HOUR DAY, WEEK, MONTH, QUARTER, YEAR 시간의 차이을 계산할 때는 TIMEDIFF( 시간1, 시간2 ) ※ Oracle처럼 시간1 - 시간2 하면? SELECT 시간1 - 시간2 FROM DUAL; 숫자가 나오긴 한다. 시간1 : 2018-05-01 16:27:11 이고 시간2 : 2018-05-01 11:38:30 일 때 결과 : 48881 이 나온다. 이 결과의 의미는? 왜 이런 결과가? 시간을 단순 숫..
CREATE TEMPORARY TABLE xxx ... 임시로 생성한 테이블에서 아래와 같은 Exception 이 발생한다면? java.sql.SQLException: The table 'xxx' is full MySQL 환경에 설정된 heap size와 temp table size를 조절해야한다. * MySQL 재기동시 반영 /etc/mysql 에 있는 mysql.cnf 파일을 수정한다. !includedir /etc/mysql/mysql.conf.d/ 이런 식으로 환경설정 파일을 나눠놨다면... 해당 경로에 있는 mysql.cnf 파일을 수정한다. 원하는 크기로 설정하면 된다. max_heap_table_size = 256000000 tmp_table_size = 256000000 * 실시간으로 반영..
Oracle의 RANK() OVER 같은 결과를 만들어 낼 수 있는 SQL이다. 특정 Key1를 기준으로 해당 Key1내에서 Key2를 기준으로 순위를 만드는 SQL이다. (아래에서는 rnum을 기준으로, created에 따라서 순위를 만들고 있다.) SELECT * FROM ( SELECT a2.* , @rn := CASE WHEN @key1 != rnum THEN 1 ELSE @rn + 1 END AS rank , @rk := CASE WHEN @rn = 1 THEN 1 WHEN @key2 = created THEN @rk ELSE @rn END AS tmp_val , @key1 := rnum , @key2 := created FROM ( SELECT ... AS rnum , ... AS create..