■ mysqlpump 소개 mysqlpump 클라이언트 유틸리티는 논리 백업을 수행합니다. 논리백업을 수행할 때 백업을 테이블 하나하나 순차적으로 백업하는게 아니라 동시에 쓰레드를 여러개 생성하여 병렬로 백업을 받게 됩니다. 그만큼 속도가 빠릅니다. 지금부터 mysqlpump의 특징에 대해 알아보겠습니다. ■ mysqlpump 기능 • 덤프 프로세스의 속도를 높이기 위해 데이터베이스 및 데이터베이스 내 개체의 병렬 처리 • 덤프 할 데이터베이스 및 데이터베이스 개체 (테이블, 저장 프로그램, 사용자 계정)를보다 효과적으로 제어 • 사용자 계정을 mysql 시스템 데이터베이스에 삽입하는 대신 계정 관리 명령문 (CREATE USER, GRANT)으로 덤프 • 압축 된 출력 생성 기능 • 진행률 표시기 (값..
MySQL에는 여러가지 Timeout 종류가 있습니다. 세션에서, 서버에서 혹은 접속시도중이나 기타 여러가지 상황에서의 Timout값이 존재합니다. 각 파라미터마다 특성이 있는데 이 관계를 잘 이해하고 설정해야 원치않는 상황에서 갑자기 세션이 종료되는 상황을 방지하거나, 필요없이 오래 접속되어 있는 세션을 종료시킬 수 있습니다. 이 Timeout 파라미터의 종류들에 대해 알아보겠습니다. * connect_timeout : mysqld 서버가 접속실패로 응답하기 전에 연결 패킷을 기다리는 시간( 초). 기본값은 10 초입니다. connect_timeout값을 늘리면 클라이언트에서 Lost Connection 오류가 자주 발생하는 경우 도움이 될 수 있습니다. Lost connection to MySQL s..
MySQL 서버는 작업에 대한 정보를 제공하는 많은 상태 변수를 유지합니다. SHOW [GLOGL | Session] Status 문을 사용하여 변수와 값을 볼 수 있습니다. 선택적 글로벌 키워드는 모든 연결에 걸쳐 값을 집계하고 Session(세션)은 현재 연결에 대한 값을 표시합니다. mysql> SHOW GLOBAL STATUS; +-----------------------------------+------------+ | Variable_name | Value | +-----------------------------------+------------+ | Aborted_clients | 0 | | Aborted_connects | 0 | | Bytes_received | 155372598 | |..
MySQL 서버는 다른 SQL 모드에서 작동 할 수 있으며 sql_mode 시스템 변수의 값에 따라이 모드를 다른 클라이언트에 다르게 적용 할 수 있습니다. DBA는 사이트 서버 운영 요구 사항과 일치하도록 전역 SQL 모드를 설정할 수 있으며 각 응용 프로그램은 세션 SQL 모드를 자체 요구 사항으로 설정할 수 있습니다. 모드는 MySQL이 지원하는 SQL 구문과 수행하는 데이터 유효성 검사에 영향을줍니다. 따라서 다른 환경에서 MySQL을보다 쉽게 사용하고 다른 데이터베이스 서버와 함께 MySQL을 사용할 수 있습니다. + SQL 모드 설정 + 가장 중요한 SQL 모드 + SQL 모드의 전체 목록 + 조합 SQL 모드 + 엄격한 SQL 모드 + IGNORE 키워드와 엄격한 SQL 모드의 비교 + ..
https://serverfault.com/questions/266232/what-is-a-challenge-password/266258 CSR 생성의 일부로 요청된 "challenge password"가 비밀키를 암호화하는데 사용된 암호와 다릅니다(키 생성 시 또는 나중에 일반 텍스트 키가 암호화될 때 요청되었다가 이를 사용하는 SSL 사용 서비스가 시작될 때마다 다시 요청). 생성되는 키와 생성된 키의 시작: $ openssl genpkey -algorithm rsa -out foo.key ............++++++ ...++++++ $ head -3 foo.key -----BEGIN PRIVATE KEY----- MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEA..
■ InnoDB 트랜잭션 그리고 잠금 정보 모니터링 3개의 InnoDB INFORMATION_SCHEMA 테이블을 사용하여 트랜잭션을 모니터링하고 잠재적인 잠금 문제를 진단할 수 있습니다. • InnoDB 트랜잭션 사용 및 잠금 정보 • InnoDB 잠금(Lock) 그리고 잠금대기(Lock-wait) 정보 • InnoDB 트랜잭션 및 잠금 정보의 지속성 및 일관성 + INNODB_TRX : 트랜잭션 상태 (예 : 실행 중인지 또는 잠금 대기 중인지 여부), 트랜잭션 시작 시점, 트랜잭션이 실행중인 특정 SQL 문을 포함하여 InnoDB 내에서 현재 실행중인 모든 트랜잭션에 대한 정보를 제공합니다. + INNODB_LOCKS : 다른 트랜잭션이 잠금을 해제하기를 기다리는 InnoDB의 각 트랜잭션 (INN..
■ MySQL 서버 파라미터 특징 MySQL서버 환경을 설정할 때 몇가지 특징이 있습니다. 이 특징들에 대해 알아보고 파라미터를 어떻게 설정하고 적용하는지 알아봅니다. ■ 서버 파라미터의 Dynamic적용 여부 MySQL 파라미터는 바로 적용할 수 있는 파라미터와 서버를 재시작해야 적용되는 파라미터가 있습니다. 이 파라미터는 다음 페이지에서 확인 가능합니다. 한글로 번역해 놓았습니다. 보기가 편리하시리라 생각합니다. Dynamic 항목에서 Dynnamic이 YES면 바로 적용이 가능하며 NO이면 서버가 재시작 되어야 적용이 됩니다. MySQL 파라미터 한글번역 : https://github.com/myacelink/MySQL ■ my.cnf 기본 위치 우분투나 CentOS등의 리눅스 운영체제에서 데이터베..
■ INNODB_METRICS 테이블 INNODB_METRICS 테이블은 InnoDB 성능 및 리소스 관련 카운터에 대한 정보를 제공합니다. INNODB_METRICS 테이블 컬럼은 다음과 같습니다. mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE NAME="dml_inserts" \G *************************** 1. row *************************** NAME: dml_inserts SUBSYSTEM: dml COUNT: 46273 MAX_COUNT: 46273 MIN_COUNT: NULL AVG_COUNT: 492.2659574468085 COUNT_RESET: 46273 MAX_COUNT_RES..
□ MySQL데이터베이스 사용방법 MySQL 데이터베이스에 대해 사용방법을 알아봅니다. DB생성, 테이블 생성-삭제, DML문법을 알아봅니다. ■ 데이터 베이스 사용을 위한 환경설정. 파이선에서 MySQL데이터베이스를 사용하기 위해선 PyMySQL이란 패키지를 설치해야 합니다. ▶︎ 인스톨방법 shell> pip install PyMySQL [root@singledb ~]# pip install PyMySQL Collecting PyMySQL Downloading PyMySQL-0.10.1-py2.py3-none-any.whl (47 kB) |████████████████████████████████| 47 kB 298 kB/s Installing collected packages: PyMySQL Suc..
□ 파일처리 파일을 생성, 수정, 읽기를 하는 방법을 알아봅니다. ■ 파일 생성. 신규 파일을 생성합니다. 만약 기존 파일이 있을시 덮어씁니다. 파일을 생성하고 그 파일안에 내용을 작성할 수 있습니다. ▶︎ 사용방법 파일객체 = open("파일명", 'w 혹은 a') 파일열기모드 설명 r 읽기모드 - 파일을 읽기만 할 때 사용 w 쓰기모드 - 파일에 내용을 쓸 때 사용 a 추가모드 - 파일의 마지막에 새로운 내용을 추가 시킬 때 사용 ▶︎ 예제 코드 코드 : # 파일을 작성하기 원하는 디렉토리 파일명을 입력하고 파일열기 모드를 설정합니다. # 여기서는 쓰기모드를 활성화합니다. f = open("/Users/phoenix/StudyPython/newfile.txt", 'w') for i in range(1..
□ 외부 클래스 사용하기 파이선에도 여러가지 유용한 클래스를 제공합니다. 수학, 스트링, 랜덤수, 시간등등 여러가지 외부에서 임포트해서 유용하게 사용할 수 있는 여러 클래스를 제공합니다. 이 클래스에 대해 사용하는 방법을 알아봅니다. ■ 파이선 외부 클래스 종류 requests : http 요청/응답 모듈 numpy : 수치해석모듈 pandas : 데이터 분석 모듈 math : 수학관련 모듈 ■ 외부 클래스 import 방법 사용법은 자바와 비슷하게 import문법으로 사용합니다. ▶︎ 사용방법 import class명. ■ string 클래스 string 클래스중 특수문자를 가지고 있는 punctuation메소드에 대해 알아봅니다. string 클래스 지원 메소드들 : https://docs.pytho..
□ 클래스 파이선을 이용하여 클래스를 만들 수 있습니다. 다른 객체지향 언어와 거의 비슷합니다. 클래스를 만들고 객체로 선언하여 사용합니다. 그리고 객체의 메소드를 호출해서 사용합니다. ▶︎ 유의사항. • __init__ 생성자, 클래스 인스턴스가 생성될때 호출됩니다. 반드시 객체를 초기화하기 위해서는 __init__라는 특별한 메소드를 사용해야 합니다. 그리고 이 안에서 사용되는 self인자는 항상 첫번째에 오며 자기자신을 가리킵니다. 이름이 꼭 self일 필요는 없지만, 관례적으로 self로 사용됩니다. 생성자에서는 해당 클래스가 다루는 데이터를 정의하는데 이 데이터를 멤버변수(member variable) 또는 속성(attribute)이라고 합니다. • self 파이썬의 method는 항상 첫번째 ..