본문 바로가기

DataBase71

postgresql dump & restore 모든 데이타 베이스에서 dump & restore는 매우 중요하다 postgresql은 아주 간단하게 dump를 할수 있당 기본 덤프 방법은 pg_dump test(database 명) > test.sql 이런 식으로 덤프를 한다. 또한 pg_dump에는 여러 옵션이 옵션에 대해서는 한번 읽어보는것이 좋다. 참고) pg_dump http://www.postgresql.org/docs/8.3/interactive/app-pgdump.html 만약 test.sql로 디비를 복원하고 싶으면 test) dropdb test createdb -Upostgres -O소유자 -Eutf-8 test psql test (데이타 베이스로 들어간다.) \i test.sql (데이타 베이스 명령어) 이런식으로 처리 하면 현재.. 2009. 5. 22.
postgresql.conf 간단하게 3 이문서는 제 개인적인 공부로 인해 저의 생각이 많이 포함되 있습니다. postgresql 8.3을 기준으로 공부 참고 여기서 쓰이는 문서는 다른 웹싸이트에 선배님들이 정리해논 글과 annotated postgresql.conf guide for postgresql이라는 문서를 참조 하였음 autovacuum 는 삭제된 튜플이 차지하고 있는 공간을 청소해주는 파라미터이다. 참조)삭제된 tuple들이 차지하고 있는 공간을 반환합니다. 보통의 PostgreSQL 작업에서 삭제되거나 update에 의해 쓸모 없어진 tuple들은 테이블에서 물리적으로는 삭제되지 않고 VACUUM이 실행될 때까지 남아있습니다. 그러므로 VACUUM은 주기적으로 실행되어야 하며, 자주 업데이트 되는 테이블들의 경우는 더 그렇습니다 .. 2009. 5. 22.
[PostgreSQL] 간단 사용법 대부분의 문법은 SQL 표준을 따르고 있다. (CentOS에서 plus 부분을 enable하고 업데이트 하면 8.1.9 버전이 깔리게 되는데 이를 기준으로 한다.) 간단히 DB에 접속하는 방법만 나열하겠다. > su postgres # psql 접속할 database명 1. 테이블 생성 create table 테이블명 (field 설명); ex> create table mytest (idnum serial primary key, name varchar(20) not null, test bigint default 0); data type에 대한 문서는 이곳을 참고 http://www.postgresql.org/docs/8.1/static/datatype.html 2. 테이블 삭제 drop table 테이블.. 2009. 5. 22.
select @@identity 사용 ******************************************** ** select @@identity 사용 ******************************************** - Insert문 실행 후 새로 삽입된 자동증가값을 얻을 때 사용 SELECT @@IDENTITY PK가 int 타입일때문 가능하다 ex) int id(1,1); INSERT INTO t_Poll (Writer, Question, SDate, EDate, ItemCount, PollTotal, RegDate) VALUES ('Manager', '김태희,송혜교, 한채영 중 누가 클까?', '20090107', '20090109', 3, 0, GetDate()) SELECT @@IDENTITY 2009. 5. 4.
MySQL Merge table설정 MySQL 1. MySQL Merge Table MySQL의 Merge ENGINE (MRG_MyISAM)은 여러개의 MyISAM 테이블로 구성되며, 당연히 MyISAM Storage Engine에서 실행이 가능하다. 아울러 컬럼 순서가 틀리다던지, index column이 틀리다던지 할 경우에는 merge 될 수 없으니 이점 반드시 명심하자. 2. Merge Table 사용방법 mysql 공식 사이트 www.mysql.com에서 정의한 머지테이블 구성은 아래와 같다. mysql> CREATE TABLE t1 ( -> a INT NOT NULL AUTO_INCREMENT PRIMARY KEY, -> message CHAR(20)) ENGINE=MyISAM; mysql> CREATE TABLE t2 ( -> a IN.. 2009. 4. 15.
MySQL 쓰면서 하지 말아야 할 것 17가지 http://www.slideshare.net/techdude/how-to-kill-mysql-performance 작게 생각하기 - 조만간 규모가 커질거라면 MySQL ecosystem을 봐야된다. - 그리고 캐싱 빡시게 안 하는 메이저 웹사이트는 없다. - develooper.com의 Hansen PT랑 Ilia 튜토리얼 볼 것 - 처음부터 확장 가능하게 아키텍처 잘 쪼개놔야된다. - 복제랑 파티셔닝 어떻게 할지 미리 계획 세워놔라. - 파일 기반 세션 좀 쓰지마 -_- - 그렇다고 너무 쓸데없이 크게 생각하지도 말 것 - 특히 성능하고 확장성 구분 못 하면 난감함 EXPLAIN 안 써보기 - SELECT 앞에 EXPLAIN 이라고 붙이기만 하면 되는 것을 (..) - 실행 계획 확인 - 타입 컬럼에.. 2009. 2. 18.
일본 우편 번호 Data 일본 우편 번호 데이터 CSV파일 2번째 코드(3 자리 숫자)가 지역코드 3번째 코드 (7자리 숫자)가 전체 우편번호 즉 2번째 코드 + 상세코드 = 3번째 코드가 된다. ex) 2번째 코드 : 179 3번째 코드 : 1790072 상세코드 : 0072 4번째는 도도부현(우리나라의 특별,광역시 또는 도 구분) - 반각 가타카나 5번째는 구(우리나라의 시,구 구분) - 반각 가타카나 6번째는 동(우리나라의 동, 읍, 면, 리 구분) - 반각 가타카나 7번째는 도도부현(우리나라의 특별,광역시 또는 도 구분) - 전각 한자 또는 가나 8번째는 구(우리나라의 시,구 구분) - 전각 한자 또는 가나 9번째는 동(우리나라의 동, 읍, 면, 리 구분) - 전각 한자 또는 가나 우편번호 데이터 파일의 형식등 전각이 되.. 2009. 2. 10.
터미널에서 mysql 원격 접속하기 간혹 리눅스 콘솔 상에서 원격 서버에 설치되어 있는 mysql에 접속할일이 생긴다. 그럴때에는 다음과 같이 하면 된다. mysql -h 원격서버 -u 유저명 -p 2008. 7. 30.
mysql 자료 옮기기 1.mysql 먼저 기존 DB의 character-set 확인 mysql> use test Database changed mysql> show variables like 'c%'; character_set latin1 1.기존 DB를 Dump mysqldump -uroot -p{password} realDB --default-character-set latin1 > dump_realDB.sql 백업시 character_set 을 위의 결과에서 나온 값을 넣어야 함. 2. 백업한 dump.realDB.sql 편집 /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@C.. 2008. 7. 10.
mysql 4.0.x -> mysql 4.1 업그레이드시 오류 해결 방법 예전 업그레이드 관련글에 포함할까 하다가 따로 빼기로 했다. ubuntu 를 기준으로 설명. 간단한 업그레이드 절차를 살펴보면. 1. 업그레이드 전 데이터 덤프 ( mysqldump --all-databases > db_dump.sql ) 2. mysql 서버 업그레이드 ( apt-get install mysql-server-4.1 ) 이렇게 업그레이드 후에 오류가 발생해서 실행이 안되는 경우가 있다. 1. /var/log/syslog 를 살펴보면 아래 과 같은 에러메세지가 나올때 mysqld : Character set 'euc_kr' is not a compiled character set is not specified in the .. .. index.xml * 기존 /etc/mysql/my.cnf.. 2008. 7. 9.
RPM파일 삭제하고 소스로 MySQL 설치하기 1. rpm -qa | grep mysql rpm -qa | grep apache rpm -qa | grep httpd rpm -qa | grep php rpm -e --nodeps mysql rpm -e --nodeps apache rpm -e --nodeps httpd rpm -e --nodeps pgp --nodeps : 의존성을 무시하고 강제 삭제 2. ./configure --prefix=/usr/local/mysql \ --localstatedir=/usr/local/mysql/data \ --with-charset=euckr \ make make install make install 하시면 /usr/local/mysql 이 설치가 됩니다. /usr/local/mysql/bin/mysql_in.. 2008. 7. 9.
MySQL 설치하기(페도라9) 이번에는 mysql 을 설치하겠습니다. 원래 어제 이미 글 썼는데.. 홀라당 날려버리는 바람에 다시 씁니다. ㅡㅡ; 익스플로러 창이 자동으로 닫혀 버리더군요.. 덕분에.. 글 쓰던거 날려버려서 에잇!! 하고 놔뒀다가 다시 씁니다. ㅋ~ 왕 짜증 나더군요.. ㅡ.ㅡ 암튼.. 빨리 글 올려야 겠네요. 혹시나 또 날라갈까. ㅜ.ㅜ mysql 은 http://www.mysql.com 에서 관련자료와 다운로드를 받으실 수 있습니다. 홈페이지에 가면 Developer Zone 이라고 있죠.. 그쪽으로 가야 다운을 받으실 수 있습니다. Developer Zone 탭을 선택하니 바로 밑에 Downloads 라고 있네요.. 이동합니다. MySQL Community Server 라고 나옵니다.. 다운을 받을려면 클릭을.... 2008. 7. 8.
NHN NBD 벤치마크 결과 NHN NBD 벤치마크 결과 (인터넷 게시판 응용 중심으로 MySQL과 성능 비교) 1. 개요... 3 1.1. NBD Benchmark 목적... 3 1.2. 인터넷 게시판 서비스 시스템 참조 모델... 3 1.3. NBD Benchmark 시스템 참조 구조... 4 2. 시험 결과... 5 2.1. 시험 환경... 5 2.2. 시험 결과... 6 2.2.1. CUBRID 7.3 : 10(thread)*7(process) SqlMap-DBCP. 6 2.2.2. MySQL: 10(thread)*7(process) SqlMap-DBCP. 6 2.3. 시험 결과 분석... 7 2.3.1. CUBRID vs MySQL TPS비교... 7 2.3.2. CUBRID vs MySQL CPU 사용율 비교... 7 2.. 2008. 7. 3.
MYSQL-프로시져, 함수 기본 문법 휴~ | 나를위해 http://blog.naver.com/paulmaur/90005333346 작성자 정왕균(areakr) 작성일 2006-04-30 18:06:38ⓒ 2006-05-06 15:23:09ⓜ 조회수 363 문법이 다른 디비와 다르고 자료가 많지 않아 적당한 수식으로 올립니다. 문자로 받아도 연산을 하면 변환없이 바로 상수로 처리됩니다. CREATE FUNCTION `fnName`(GSCode char) RETURNS char(50) BEGIN Declare TRef, CAmount1, SellProc, CAFlag int; ##숫자형 연결하기 Set TRef = CONCAT((GSCode+10) % 65 , Right(GSCode*33, 3) ); ##쿼리해서 결과 변수에 넣기 SELECT.. 2008. 6. 27.
MySQL 튜닝에 관하여 홍서기.. | 홍서기 http://blog.naver.com/lhs0806/60001048676 kenu@okjsp.pe.kr http://okjsp.pe.kr [mysql] 초보도 알아야 할 MySQL 튜닝 18 가지 made By www.tood.net Suhoi Lee 2002/02/23 --------------------------------------------------------------------- 1.반드시 컴파일 하라! 10-30% 속도 향상 ! 소스를 가지고 컴파일 하세요. MySQL 메뉴얼에 따르면 10-30% 속도가 빠르다고 합니다. RPM 이나 바이너리 설치를 하지 마세요 ! 1-2.최신 버전을 사용하라 최신 버전이 좋은 점은 자동 튜닝 하는 것 입니다. 버그를 수정 하구요... 2008. 6. 27.
Mysql Function 과 Procedure 하루에도 열두번씩 | 챨스 http://blog.naver.com/khm8843/20027634540 처음으로 만들 Helloworld 는 함수였습니다. 함수와 프로시져를 서로 만드는 법이 틀리죠. 하지만 구조가 많이 비슷합니다. Functions 함수는 항상 리턴 값이 존재합니다. 그리고 꼭 하나의 값만 리턴합니다. MySQL에서 자주 사용하는 CONCAT 라는 함수를 보겠습니다. mysql> select concat(emp_name,' ',dept_id) from emps; +------------------------------+ | concat(emp_name,' ',dept_id) | +------------------------------+ | Roger 1 | | John 2 | | Alan.. 2008. 6. 27.
MS-SQL Server 백업과 복원 http://netggio.pe.kr | 구차니즘 http://blog.naver.com/norther80/80010290266 ㅁ MS-SQL Server 백업과 복원 ㅇ MS-SQL Server 데이터베이스 복구모드 - 전체 복구 모델 : 문제가 발생한 시점이나 원하는 시점까지 데이터를 복구할 수 있도록 모든 작업과 관련된 로그를 기록하는 복구모델, 가장 안전한 복구모델이다. - 대량로그 복구 모델 :문제가 발생한 시점까지 데이터를 복구 할 수 있지만, 원하는 시점까지 데이터를 복구할 수는 없다. - 단순 복구 모델 : 가장 최근에 백업받은 시점까지만 데이터를 복구할 수 있다. 엔터프라이즈 > 임의의 데이터베이스 속성 > 옵션 > 복구 ㅇ MS-SQL Server 데이터베이스 백업 /* 백업시 해당 .. 2008. 6. 27.
Mssql 프로시저의 기본 에구머니나 | stayintune http://blog.naver.com/stayintune/80018193893 //프로시저 생성 create procedure sp_user //proc로 줄여쓸 수 있다. as begin select u.id,name,age,login from userinfo u, userlog l where u.id=l.id end //프로시저 출력 exec sp_user //개체 확인 sp_helptext sp_user //프로시저 삭제 drop proc sp_user //#으로 테이블과 마찬가지로 임시프로시저 생성가능 (연결이 끊어지면 사라진다.) create procedure #sp_user ~~ //임시 프로시저 출력 #sp_user 엔터프라이즈에 가서 도구 안에 마법사를 .. 2008. 6. 27.
엑셀 워크시트를 연결된 서버로 만들기 TPPsc님의 블로그 | 태쥐 http://blog.naver.com/tppsc/60028037516 오랜만에 강좌를 올리게 되네요. 예전에 연결된 서버(Linked Server) 마지막 강좌에서 '다음 강좌를 기대해 주세요'라고 했는데, 그 이후로 많은 시간이 흘렀습니다. 그 강좌에 이어 연결된 서버의 활용에 대해 설명을 해보고자 합니다. 연결된 서버는 꼭 서버와 서버 간에만 가능한것이 아닙니다. 바로 이전 강좌 마지막 부분에 언급 했듯이 엑셀 워크시트를 연결된 서버로 설정할 수도 있고, 일반 텍스트 문서를 연결된 서버로 설정할 수 있습니다. 이번 강좌에서는 엑셀 워크시트를 연결된 서버로 설정하여 엑셀 워크시트를 데이터베이스의 테이블처럼 활용하는 방법을 확인해 보도록 하겠습니다. 1. 엑셀 워크시트 준.. 2008. 6. 27.
Microsoft SQL Server 2005에서 FOR XML의 새로운 기능 유연성을 제공합니다. FOR XML 식을 중첩하는 기능과 함께 새로운 PATH 모드는 복잡한 XML 문서를 생성하기 위한 가장 간단한 방법으로 사용되어 왔습니다. PATH 모드에서는 XPath형 구문을 열 이름으로 사용하여, 이를 특성(예: "@a"), 요소(예: "e"), 하위 요소 구조("e1/e2"), 요소 콘텐츠("*"), 텍스트 노드("text()") 또는 데이터 값("data()")으로 매핑할 수 있습니다. RAW 모드에서와 마찬가지로 행 요소의 기본 이름은 row이며 NCName(접두사 없는 이름)으로 덮어쓸 수 있습니다. 몇 가지 예제를 살펴봅시다. 먼저, 위 EXPLICIT 모드 쿼리의 PATH 모드 공식화를 사용해 봅시다. SELECT CustomerID as "@CustomerID",.. 2008. 6. 27.
Monitoring Stored Procedure Usage 웹서핑중 유용한 스크립트 자료가 있어 소개합니다~ 저장 프로시져의 실행수 카운트 : select db_name(st.dbid) DBName ,object_schema_name(st.objectid,dbid) SchemaName ,object_name(st.objectid,dbid) StoredProcedure ,sum(qs.execution_count) Execution_count from sys.dm_exec_cached_plans cp join sys.dm_exec_query_stats qs on cp.plan_handle=qs.plan_handle cross apply sys.dm_exec_sql_text(cp.plan_handle)st where DB_Name(st.dbid) is not null.. 2008. 6. 27.
PC에 저장되는 파일을 MS-SQL2005로 가져오기 달이랑 별이랑 | 처리요 http://blog.naver.com/chullin/130013744780 식을 이용하여 파일명 변경하기 이번 건 역시 Q&A에 올라온 내용에 대한 답변 차원에서 작성하는 내용입니다. [상황] 예를 들어 d:\test.txt라는 이름의 매일 생성되는 파일을 test_20070110.txt 와 같이 수행되는 날짜가 덧붙여진 파일 명으로 변경(or 복사)하는 작업을 구현하고자 합니다. 이와 같은 작업을 구현하는 예로 두 가지를 설명하겠습니다. 하나는 파일 시스템 작업을 이용하는 것이고, 다른 하나는 스크립트 작업을 이용하는 것입니다. [파일 시스템을 이용하는 방법] 연결 관리자에서 두 개의 파일 연결을 정의합니다. 하나는 원본 파일(d:\test.txt)을 가리키며, 다른 하나는 .. 2008. 6. 27.
mssql 저장프로시저 예문 하루에도 열두번씩 | 챨스 http://blog.naver.com/khm8843/20033529213 use Northwind -- 프로시저 예제 --생성 create Procedure dbo.test_procedere01 As Begin select top 3 * from Categories end --실행 exec test_procedere01 --생성 create Procedure dbo.test_procedure02 @CategoryID int As Begin select * from Categories where CategoryID = @CategoryID end --실행 exec test_procedure02 '1' --생성 create Procedure dbo.test_procedure03 .. 2008. 6. 27.