본문 바로가기

MySQL

(10)
MySQL Python 연동 1. mysqldb 다운wget http://sourceforge.net/projects/mysql-python/files/mysql-python/1.2.3/MySQL-python-1.2.3.tar.gz 2. 최초 setuptools가 필요합니다. setuptools 설치 검색하면 나옴 3. site.cfg 수정이 필요합니다. 저는 여기서 삽질했습니다. mysql을 static하게 컴파일을 했었더니 라이브러를 못찾는 경우가 발생합니다. 원인을 찾아볼려고 했지만 LD_LIBRARY_PATH 혹은 /etc/ld.so.conf 를 수정해도 원인 불명이였습니다. [options] # embedded: link against the embedded server library # threadsafe: use the..
MySQL 5.5.10 설치 # rpm -qa | grep mysql만약에 설치 되어있다면 rpm -e --nodeps 패키지명 이나 또는 yum remove 패키지명 으로 삭제한다.설치한 흔적이 없으면 바로 설치로 들어간다. 1. cmake 의 소스파일을 받아와서 설치한다. # wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz # tar xvfz cmake-2.8.4.tar.gz # cd cmake-2.8.4 # ./bootstrap # make && make install 2. 본격적인 mysql 5.5.10 설치 mysql 다운로드 사이트 아래로가서 비회원으로 다운 한다. mysql-5.5.10.tar.gz 소스코드 파일을 다운로드한다. 그리고 서버에 업로드.wget http:..
dbms 정규화 예제 USE TestDB/* 1. 업무분석 : 담당자와 인터뷰, 문서(서류, 장표, 보고서) 중심으로 업무 파악 2. 개념적 데이터 베이스 모델링 : Entity(Table), Attribute(field) 구성(도출) 3. 논리적 데이터 베이스 모델링 : 관계형 데이터 베이스 이론에 입각한 Schema(스키마) 설계 4. 물리적 데이터 베이스 모델링 : DBMS의 종류 결정 column(field)의 Data Type, Size 정의 *//*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 제1정규화 ++++++++++++++++++++++++++..
DB,RDBMS,정규화 1. 데이터베이스란?① 정의 : 여러 응용 시스템을 통해 액세스가 가능한 공유된 형태의 통합된 데이터들의 집합② 데이터베이스를 공뷰하는 이유 : 다이어리를 이용하여 주소록, 연락처 등을 관리하거나, 일기장에 일기를 쓰거나 가계부를 적는 등의 많은 일상생활 속에서 우리는 이미 데이터베이스를 구축하여 사용하고 있으며 , 이러한 내용을 컴퓨터를 이용하여 물리적, 논리적으로 체계화 시켜서 보다 효율적으로 사용할 수 있다. 2. 데이터베이스 관리 시스템(DBMS)① 데이터베이스 관리 시스템의 특징 데이터 독립성 - 물리적 독립성: 데이터베이스 사이즈를 늘리거나 성능 향상을 위해 데이터 파일을 늘리거나 새롭게 추가하더라도 관련된 응용 프로그램을 수정할 필요가 없다. - 논리적 독립성 : 데이터베이스는 논리적인 구조..
Mysql 트랜잭션 사용하기 [ 트랜잭션 이란 ? ] 어떤 작업을 수행할 때 작업이 실패하더라도 이 잘못된 작업이 실질적으로 수행해야 할 작업에는 영향을 미치지 않도록 하는 기능이다. 예를 들어서, 내가 계좌이체를 승인하는 버튼을 눌렀을 때 정전이 일어났을 경우 이미나의 통장에서는 돈이 빠져나간 상태이고 상대방에게는 이체가 되지 않은 상황이 발생하게 된다. 그럼 이 돈은 어떻게 되는 것 일까요? 이러한 문제가 발생하지 않도록 해주는 기능을 트랜잭션이라고 할 수 있겠습니다. mysql에서의 트랜잭션은 버전 3.23.x 버전부터 지원가능 합니다. 그러므로 3.22.x 버전 사용자를 트랜잭션을 사용할 수 없게 되어있습니다. 3.23.x 버전에서 트랜잭션기능을 사용하기 위해서는 버클리대학에서 만든 버클리 DB를 설치해야 합니다. 이 버클리..
Mysql 테이블 Join 간단히 말하면 join은 두개 이상의 테이블로부터 필요한 데이터를 연결해 하나의 포괄적인 구조로 결합시키는 연산이다. 예를 들어, 한 컴퓨터 제조업자가 자신의 데이터를 능률적으로 관리하기 위한 데이터베이스가 필요하다고 하자. 이 데이터들은 주문, 고객, 생산과 같은 어떤 일관성있는 개념과 관련된 각각의 데이터들이 모여 다양하고 간결한 테이블들을 이룰 것이다. 테이블을 생성한 후에는, 다양한 예를 들어 데이터베이스에서 가장 많이 사용되는 join의 조작법에 대해 설명하겠다. 첫번째 테이블은 제조업자가 분류한 다양한 타입의 PC들의 데이터로 구성될 것이다. ---------------------------------------------- mysql> create table pcs ( -> pid INT, ..
MySQL VIEW 사용법 CREATE VIEW MySQL 5 버전 이후 부터는 VIEW를 사용할 수 있다.아래와 같은 구조의 테이블 tData1, tData2 를 생성했다.(여기서 tData1 과 tData2 의 참조관계는 없으며 이해를 돕기 위해 작성한 테이블이다.)-- Data1 테이블 작성 CREATE TABLE tData1 ( idx int(10) unsigned NOT NULL auto_increment, nMoney int(10) NOT NULL default '0', nDate int(10) NOT NULL, PRIMARY KEY (idx) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- Data2 테이블 작성 CREATE TABLE tData2 ( idx int(10) unsigned NO..
Index 정의 INDEX의 의미? RDBMS에서 검색속도를 높이기 사용하는 하나의 기술이입니다.INDEX는 색인입니다. 해당 TABLE의 컬럼을 색인화(따로 파일로 저장)하여 검색시 해당 TABLE의 레코드를 full scan 하는게 아니라 색인화 되어있는 INDEX 파일을 검색하여 검색속도를 빠르게 합니다.이런 INDEX는 TREE구조로 색인화합니다. RDBMS 에서 사용하는 INDEX는 Balance Search Tree 를 사용합니다.실제로는 RDBMS 에서 사용되는 B-Tree 는 B-Tree 에서 파생된 B+ Tree 를 사용한다고 합니다. 참고로 ORACLE이나 MSSQL에서는 여러종류의 TREE를 선택하여 사용가능하다. INDEX의 원리? INDEX를 해당 컬럼에 주게 되면 초기 TABLE생성시 만들어진 ..