본문 바로가기

728x90
반응형

연구개발/MYSQL

(247)
프로시저 프로시저 생성 시OUT을 받을 것라면프로시저 내에서 DECLARE po_result INT 를 선언하지 않아야 한다. DROP PROCEDURE getName;DELIMITER //CREATE PROCEDURE getName (OUT po_result VARCHAR(50))BEGINDECLARE v_sqlstateVARCHAR(5) DEFAULT '00000';DECLARE v_msgVARCHAR(500);DECLARE v_err_noINT;--DECLARE po_resultINT signed DEFAULT 0; -- select로 po_result를 받을 거라면 선언하고 set로 받을거라면 선언하면 안됨.DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING BEGIN..
사용자 정의 변수 MySQL에서는 두 가지 방법으로 사용자가 정의한 변수를 지원한다. 변수이름은 alphanumeric 문자와 '_', '$', '.'로 구성된다. 변수에 초기값이 지정되지 않으면, NULL이 디 폴트이며, integer, real, string 값을 저장할 수 있다. 변수이름은 버전 5.0부터는 대·소문자 구분이 없다. 방법1) SET 문을 사용하여 변수를 설정 SET @variable={integer expression | real expression | string expression } [,@variable=...] 【예제】 mysql> set @t3=5; mysql> select @t3; +------+ | @t3 | +------+ | 5 | +------+ mysql> 방법2) @variabl..
Datetime 필드 기준 파티션 자동 관리 프로시저 (MySQL) [출처] Datetime 필드 기준 파티션 자동 관리 프로시저 (MySQL)|작성자 돌고래사육사http://seuis398.blog.me/70186283219 MySQL에서 파티셔닝은 성능 문제로 권장되는 옵션은 아니다.하지만, 로그 데이터와 같이 주기적으로 과거 데이터를 삭제해야 되는 경우라면 파티셔닝이 매우 편리하다.신규 파티션 추가와 오래된 파티션 삭제를 수작업으로 하기는 번거로울테니, 간단하게 이 과정을 자동화 해 줄 프로시저를 만들어 봄~ [파티션 관리 요건]- 어떠한 이유에서든지 프로시저가 동작하지 않은 경우라도 데이터 INSERT 실패가 발생하지 않도록 할 것- 프로시저가 일정 기간 동작하지 않고 다시 재가동 되는 경우에, 프로시저가 주기적으로 동작했던 것과 동일한 파티션 구조를 생성할 것-..
federated mysql의 linked server 구현 mysql에서는 FEDERATED라는 엔진이 있다. FEDERATED 테이블은 사용하기 매우 간단하며, 정상적인 경우, 동일한 호스트, 다른 호스트 상에서 두대의 서버를 구동할 수 있습니다. 즉 FEDERATED 테이블이 동일한 서버가 관리하는 다른 테이블을 사용할 수 있다는 말이죠. 우선, 여러분이 FEDERATED 테이블을 사용해서 접속하고자 하는 리모트 서버상에 테이블 가지고 있어야 한다. federated 데이터베이스에 리모트 테이블이 있고 그 테이블이 아래와 같이 정의 되었다고 가정하자: CREATE TABLE test_table ( id INT(20) NOT NULL AUTO_INCREMENT, name VARCHAR(32) NOT NULL DEFAULT '', other INT(20) NOT..
mysql 5.7 설치 안녕하세요. 준경대디 입니다. "머리만1톤"님도 언급하셨지만,경우에 따라 기존 설치스크립트대로 MySQL 5.7 설치해보면 여러가지 난관을 경험하게 됩니다. 저도 동일한 어려움을 겪고 고생한 적이 있었는데,문제없이 설치되는 스크립트 공유해 봅니다. -- ================================================================================= -- 필수 프로그램 설치 -- =================================================================================sudo su - yum install -y gcc automake autoconf libtool make cpan libstdc* li..
Avoiding Common MySQL Operations Mistakes.pdf ➨ MYSTERY CONFIGURATION - config(/etc/my.cnf) 파일 수정시 source control(svn, git) 을 사용해라. ➨ ABANDONED EXPERIMENTS - default 값이 잘 선택된 값일 지라도 해당 작업 환경에서 더 나은 config value 를 테스트하고 적용해라. ➨ AIMLESS TUNING - 튜닝 방식에 대한 설명.. - e.g. variables sort_buffer_size 에 대한 영향은 status sort_merge_passes 로 확인 할 수 있다. 해당 변수의 변경우 status 확인으로 최적화된 값을 찾는다. - pt-mtext (percona-toolkit) 과 Percona monitoring plugin 을 활용할 수 있다...
mysql 대용량 백업 빠르게하기. speed up mysqldump 백업 . mysqldump --compress --max_allowed_packet=500M -h myhost mydb | gzip > /tmp/mydb.sql.gz 복구gunzip
slave 데이터 불일치 시 1. [Master] Table 백업 : mysqldump --master-data=2 2. [Slave] Replication 중단 1) STOP SLAVE; 2) MASTER_LOG_FILE, MASTER_LOG_POS 확인 3. [임시서버] Replication 을 이용하여 Table Recovery 진행 1) dump 받은 파일 import 2) START SLAVE SQL_THREAD UNTIL MASTER_LOG_FILE = 'Log_name', MASTER_LOG_POS = Log_pos; 3) 복구된 테이블 export 4. [Slave] 복구된 테이블 import 및 Replication 재개 1) import 2) START SLAVE;[출처] slave 테이블 데이터 불일치시 복원방법..

728x90
반응형