노무현 전 대통령 서거 추모글 남기기

'MySQL'에 해당되는 글 4

  1. 2007.10.18 ERROR 1 (HY000): Can't create/write to file (Errcode: 13) 2
  2. 2007.10.15 MySQL UNIQUE
  3. 2007.10.05 index 효과 테스트
  4. 2007.08.02 MySql/Foreign Key

문제 파악


mysql> select * into outfile '/tmp/test.dat' from test;

이 명령어, 환경에 따라 안먹히는걸까?


Fedora Core release 3(Heidelberg) / mysql 4.1.22 에서는 OK 되었고,

Fedora Core release 4 (Stentz) /mysql 4.1.20 에서는 다음과 같은 에러가 떴다.
ERROR 1 (HY000): Can't create/write '/tmp/test.dat' to file (Errcode: 13)
 

문제 해결

http://bugs.mysql.com/bug.php?id=19557 여기보면..

chmod 777 디렉토리명 해도 안된다는 문젠데,

난 이렇게 하니까 되네. :-)
 

mysql> select * into outfile '/tmp/test.bak' from help;
ERROR 1 (HY000): Can't create/write to file '/tmp/test.bak' (Errcode: 13) <- 안되다가

mysql> select * into outfile '/tmp/test.bak' from help;
Query OK, 367 rows affected (0.00 sec) <- chmod 777 /tmp 하니 됌


한편, \ \\ 로 바꾸니 되더란 얘긴 있는데, 난 안먹혔음

 

찾다보니, 이런 페이지가 있는데, if you're google user....

http://www.experts-exchange.com/Database/MySQL/Q_21696685.html

놀랍게도 한국어를 선택하니 번역 페이지가 나오네. databasezone.. 번역이 수상하긴 하지만;;


이 글은 스프링노트에서 작성되었습니다.

MySQL UNIQUE

개발자가 뭐길래 | 2007. 10. 15. 11:00 | sweetw

왜 unique로 지정한 Key 에 MUL 이라고 나오죠?

  1. mysql> CREATE TABLE X (FLD1 INT UNIQUE);
    Query OK, 0 rows affected (0.05 sec)
    mysql> DESCRIBE X;
    +-------+---------+------+-----+---------+-------+
    | Field | Type    | Null | Key | Default | Extra |
    +-------+---------+------+-----+---------+-------+
    | FLD1  | int(11) | YES  | MUL | NULL    |       |
    +-------+---------+------+-----+---------+-------+

앤디 : MUL은 key가 여러번(Multiple times) 존재할 수 있다는 걸 뜻하지 않나요?

포올 : 네. non-unique 인덱스의 하나라 할 수 있죠.

앤디 : 그치만 난 분명 UNIQUE 라고 지정해줬는데요. (CREATE문을 보세요)

포올 : UNIQUE 인덱스는 여러개의 NULL 값을 가질 수 있어요. FLD1 컬럼을  FLD1 INT NOT NULL UNIQUE 라고 지정해 보세요. 다른 점을 확인할 수 있을겁니다.


* NOT NULL 을 지정해야 하네요. :)

이 글은 스프링노트에서 작성되었습니다.

index 효과 테스트

개발자가 뭐길래 | 2007. 10. 5. 22:53 | sweetw

100만건 테스트 에서 이용한 방법


  • 해쉬값에 index를 적용한다 :alter table profile ADD INDEX profile_idx(hash);

  • <인덱싱하는 쿼리문> 
    mysql> alter table profile ADD INDEX profile_idx(hash);
    Query OK, 1000048 rows affected (48.86 sec)
    Records: 1000048  Duplicates: 0  Warnings: 0

  • index 쿼리문 시간
     이용전  select * from profile where profile_index = 1000020;  0.00sec
     이용전  select * from profile where hash = '1d5177503ffb293663888bd43eacc53d';  3.15sec
     이용후  select * from profile where hash = '1d5177503ffb293663888bd43eacc53d';  0.01 sec

이 글은 스프링노트에서 작성되었습니다.

'개발자가 뭐길래' 카테고리의 다른 글

MySQL UNIQUE  (0) 2007.10.15
553 sorry, that domain isn't in my list of allowed rcpt hosts  (2) 2007.10.11
조엘 온 소프트웨어  (1) 2007.10.02
버그 잡이  (0) 2007.09.28
여자 개발자 모임 인터뷰  (0) 2007.09.18

MySql/Foreign Key

개발자가 뭐길래 | 2007. 8. 2. 15:09 | sweetw
MySql에서 foreign key를 이용하기 위한 준비

foreign key를 이용하기 위해서는 innoDB 이어야 한다.


innoDB 확인 방법

mysql 4.X버전부터는

innodb type을 기본적으로 지원하고 있습니다..

정확히 어떤 버전부터 innodb type을 지원하는지는 모르겠지만,

3.X 버전에서 mysql을 소스컴파일로 설치할때 configure 옵션에

--with-innodb를 사용한다면 innodb 타입을 사용할 수도 있습니다.

자신이 설치한 MySql의 innodb 지원여부를 알아보기 위해서는

mysql 프롬프트에서

msyql> show variables like 'have_%' 라고 친다음

'have_innodb' 항목의 value가 YES 인지 확인하면 됩니다.

'개발자가 뭐길래' 카테고리의 다른 글

야근일기  (3) 2007.08.21
여자개발자모임 주제토론회를 다녀와서  (2) 2007.08.02
firefox (파이어폭스, 파폭?)  (2) 2005.12.22
오라클  (0) 2005.12.14
퍼온글  (0) 2005.12.12