아웃룩 2003

POP 설정에 문제가 있으세요? 윈도우 사용자의 경우 Gmail POP 문제해결 도구를 다운로드하여 아웃룩 2000 이상, 아웃룩 익스프레스 6 또는 썬더버드 1.5에서 발생하는 POP 관련 문제를 자동으로 진단할 수 있습니다.

아래 정보는 애니메이션 데모로도 볼 수도 있습니다: Gmail POP 서비스

  1. Gmail 계정에서 POP를 활성화합니다.
  2. 아웃룩 2003을 엽니다.
  3. 도구 메뉴를 클릭한 다음 전자 메일 계정...을 클릭합니다.


  4. 새 전자 메일 계정 추가를 선택하고 다음을 클릭합니다.


  5. POP3라디오 버튼을 클릭하여 서버 유형으로 POP3를 선택하고 다음을 클릭합니다.


  6. 각 해당 입력란에 다음 정보를 입력합니다.
    사용자 정보
    사용자 이름: 보내는 메일의 보낸 사람: 입력란에 표시되는 이름을 입력합니다.
    전자 메일 주소: 전체 Gmail 주소(사용자 이름@gmail.com)를 입력합니다.

    서버 정보
    받는 메일 서버(POP3): pop.gmail.com
    보내는 메일 서버(SMTP): smtp.gmail.com

    로그인 정보
    사용자 이름: Gmail 사용자 이름(@gmail.com 포함)을 입력합니다.
    암호: Gmail 비밀번호를 입력합니다.


  7. 기타 설정...을 클릭한 다음 보내는 서버 탭을 클릭합니다.
  8. 보내는 메일 서버(SMTP) 인증 필요 옆의 확인란을 선택한 다음 받는 메일 서버와 동일한 설정 사용을 선택합니다.


  9. 고급 탭을 클릭한 다음 받는 메일 서버(POP3)에서 암호화된 연결(SSL) 필요 옆의 확인란을 선택합니다.


  10. 보내는 메일 서버(SMTP)에서 암호화된 연결 필요(SSL) 확인란을 선택한 다음 보내는 메일 서버(SMTP): 입력란에 465를 입력합니다.
  11. 확인을 클릭합니다.
  12. 계정 설정 테스트...를 클릭합니다. 축하합니다! 모든 테스트를 성공적으로 완료했습니다. 메시지가 나타나면 닫기를 클릭합니다.
  13. 다음완료를 차례로 클릭합니다.
* Gmail에서 POP를 활성화한 후 변경사항 저장을 클릭하셨나요? Gmail이 메일 클라이언트와 통신할 수 있도록 하려면 Gmail 메일 환경설정 페이지에서 변경사항 저장을 클릭하셔야 합니다.
원문 : error while loading shared libraries: libmysqlclient.so.10: cannot

error while loading shared libraries: libmysqlclient.so.10: cannot open shared object file: No such file or directory
 
1. libmysqlclient.so.10 파일을 find로 찾아 라이브러리 패스에 추가
# vi /etc/profile
export LD_LIBRARY_PATH=/usr/local/mysql/lib/mysql:LD_LIBRARY_PATH
2. 라이브러리가 설치되어 있지 않다면 Mysql Shared-library 설치. (http://downloads.mysql.com/archives.php)
# rpm -ivh MySQL-shared-3.23.44-1.i386.rpm
 
 
symbol errno, version GLIBC_2.0 not defined in file libc.so.6 with link time reference
 
# vi /etc/profile
   export LD_ASSUME_KERNEL=2.4.1

'도서관 I > Database' 카테고리의 다른 글

Oracle Table Alias ㅡ,.ㅡ  (4) 2009.07.02
[바람이] sysbench-0.4.8  (0) 2007.09.03
[바람이] Mysql InnoDB - DoubleWrite  (0) 2007.08.07
[펌] MySql Storage Engines  (0) 2007.07.11
[바람이] MySql 5.0.37 Windows Source 설치 조건  (0) 2007.07.02
mysql의 innoDB를 사용하여 OLTP의 workload를 수행합니다.

정확한 인스톨및 사용법은 다음을 참고하시기 바랍니다.

http://sysbench.sourceforge.net/




P.S : MySQL에 TPC-C를 수행하는 시뮬레이터가 아닙니다.

원문 : __FILE__, __FUNCTION__, __LINE__ 매크로~


printf, printk, fprintf 등등..


테스트나 디버깅 할때 어느 파일의 어느 함수의 몇번째 라인인지를 손쉽게 찍어 주는 구마..



예)


printf("파일 : %s,  함수 : %s,  라인 : %d\n", __FILE__, __FUNCTION__, __LINE__);



종종 __FUNCTION__ 에서 에러가 날수도 있는데....


그러면 대신 __func__ 를 사용하도록......

원문 : __FILE__ , __LINE__ 의 활용

#include <stdio.h>
void main() {
#line 1 "main.c"
        int i=2,j=3,k=4;
        printf("%d,%d,%d\n",i,j,k);
        printf("%s, %d\n",__FILE__,__LINE__);
        printf("%d\n",__LINE__);
#line 3897
        printf("%s, %d\n",__FILE__,__LINE__);
#line 0 "aaa.c"
        printf("%s, %d\n",__FILE__,__LINE__);
}

다음의 결과를 유추해 보세여..
시간 1분) 밑에 답을 보기 전에 꼭 먼저 생각해 보시길...
















2,3,4
main.c, 3
4
main.c, 3897
aaa.c, 0

이때 __LINE__은 현재 행의 번호를
__FILE__은 현재 파일명을 나타내는데
#line 매크로가 이값을 바꿔 줄수 있습니다.

이기법은 향후에 assert를 이용한 동적 디버깅에 많이 응용이
되니 눈여겨 봐야 합니다.

파일자르기

split -C 1024000 install.log

 - install.log 파일을 1메가 한도내의 줄단위로 자른다.

split -b 10240 install.log install_

 - install.log 파일을 10키로바이트 단위로 접두어 install_로 자른다.

각 계정에 적용되는 vim 설정파일은 각 계정 폴더의 .vimrc 파일이다.
만약 없을 경우 만들어 주면 된다. (없다는것은 별로 설정할 것이 없어서 존재하지 않는것임)

즉, 어떤 계정이든지 vi ~/.vimrc를 입력하면 각각의 계정의 vim 설정파일을 설정할 수 있다.

전체 계정의 vimrc를 설정하고 싶은 경우에는,

vi /etc/vimrc를 수정하면 된다. (숨김 속성이 아니다.)




만약 .vimrc에서 syntax on이 적용되지 않는 경우에는

현재 사용하는 vi가 vim이 아니라고 생각하면 된다.

따라서, 다음과 같은 과정을 거친다.





.bashrc 파일에 추가

alias vi=vim



# source .bashrc    (재접속 하지 않고 적용)


.vimrc 파일에 추가

syntax on



다음에 vi로 코드를 열게 되면, 컬러가 나오게 된다.

이거 찾는라고 많이 고생했다... 쩌비...



'도서관 I > 리눅스' 카테고리의 다른 글

[펌] eggshell.c 코드  (0) 2008.11.14
[펌] 대용량 파일 자르기  (0) 2007.08.22
[바람이] 리눅스에서 주로 사용하는 명령어 사용법  (0) 2007.08.02
[바람이] vi 사용법 정리  (0) 2007.08.01
[펌] gcc 명령어  (0) 2007.07.26

InnoDB uses simulated asynchronous disk I/O: InnoDB creates a number of threads to take care of I/O operations, such as read-ahead.

There are two read-ahead heuristics in InnoDB:

  • In sequential read-ahead, if InnoDB notices that the access pattern to a segment in the tablespace is sequential, it posts in advance a batch of reads of database pages to the I/O system.

  • In random read-ahead, if InnoDB notices that some area in a tablespace seems to be in the process of being fully read into the buffer pool, it posts the remaining reads to the I/O system.

InnoDB uses a novel file flush technique called doublewrite. It adds safety to recovery following an operating system crash or a power outage, and improves performance on most varieties of Unix by reducing the need for fsync() operations.

Doublewrite means that before writing pages to a data file, InnoDB first writes them to a contiguous tablespace area called the doublewrite buffer. Only after the write and the flush to the doublewrite buffer has completed does InnoDB write the pages to their proper positions in the data file. If the operating system crashes in the middle of a page write, InnoDB can later find a good copy of the page from the doublewrite buffer during recovery.

원문 : http://www.mysqlkorea.co.kr/sub.html?mcode=develop&scode=01&m_no=20752&cat1=14&cat2=422&cat3=448&lang=e

InnoDB의 버퍼를 공부하다 보니 DoubleWrite Buffer에 대해서 나오길래 찾다가 MySql 홈페이지에서 찾았다.

InnoDB는 시뮬레이티드 비동기 (simulated asynchronous) 디스크 I/O를 사용한다: InnoDB는 읽기-위주 (read-ahead)와 같은 I/O 연산을 잘 처리하기 위해 수많은 쓰레드를 생성한다.

 

InnoDB에는 두 가지의 읽기-위주 방법이 존재한다:

  • 시퀀셜 읽기-위주의 경우, InnoDB가 테이블스페이스에 있는 세그먼트에 대한 접속 패턴이 시퀀셜이라는 것을 인지한다면, 앞에 존재하는 데이터베이스 페이지의 읽기 배치 연산을 I/O시스템에 보낸다.
  • 무작위 읽기-위주의 경우, 만일 InnoDB가 테이블스페이스의 어떤 부분이 버퍼 풀 안으로 전체적인 읽기를 진행하는 것처럼 인지한다면, 나머지 읽기 연산을 I/O 시스템에 보낸다.

InnoDBdoublewrite라고 불리우는 기발한 파일 플러시 기법 (novel file flush technique)을 사용한다. 이 기법은 OS 크래시 또는 전원 문제 이후의 복구 연산을 보다 안전하게 하도록 하며, fsync() 연산에 대한 필요성을 절감시킴으로써 다양한 유닉스 버전의 성능을 향상시켜준다.

 

이중 쓰기란, 데이터 파일에 페이지를 쓰기 전에, InnoDB는 우선 페이지를 이중 쓰기 버퍼라고 불리우는 인접한 테이블스페이스에 기록한다는 것을 의미한다. 이중 쓰기 버퍼에 기록을 하고 이것을 플러시한 후에야 InnoDB는 그 페이지를 데이터 파일의 적당한 위치에 기록을 하게 된다. 만일 OS가 페이지 쓰기 중간에 크래시 된다면, InnoDB는 나중을 복구를 할 때 이중 쓰기 버퍼에서 제대로 된 페이지를 찾을 수가 있게 된다.



이는 한글 메뉴얼 site에서 번역본을 찾은 것이며, 조금 번역이 잘못된 것을 고쳐 보았다.


다음은 조금 이해하기 어려운 용어를 정리해 보았다. 도움이 되길...

* 읽기-위주 (read-ahead)
  - 딱히 번역할 말을 나도 찾지 못하겠다. 쩌비.
    우선, read-ahead란 일반적으로 데이터는 연속된 공간에 순차적으로 저장되어지는 점(locality)을 모태로 읽기 연산이 발행하면, 특정한 몇몇 페이지(단지 읽기의 단위를 표현하고 싶었다.)를 미리 같이 읽어 버리는 기법을 말한다. 즉, 여기에서는 버퍼에 7번 페이지를 읽어달라고 요청이 오면, 8번 페이지도 곧 읽기 요청이 올것이라고 예상하고, 미리 7번 8번 페이지를 같이 읽어들이는 기법을 말한다.
    이는, 8번이 될 수도 있고, 8~n번 페이지를 모두 동시에 읽을 수도 있으며, 이는 여러 알고리즘 기법에 따라 다르다.
    그리고, 꼭 8번이 되지 않을 수도 있으며, 임의(random)의 한 페이지을 미리 읽는 기법도 있으니, 참고하기 바란다. (위에 보니 나와있다... 헐... 미리 다 읽고 써야겠다.)

안녕하세요? 바람돌이입니다.
리눅스에서 주로 사용하는 명령어를 몇개 정리해보았습니다.
순서는 중요도와 관련이 없습니다.



1. wget
# wget [option] [URL]
 80번 (HTTP) 포트가 열려있는 상태에서의 파일을 받아오기 위한 명령어.
 일반적으로 웹브라우저에서 특정 파일을 클릭해 내 컴퓨터로 받아오는 것과 동일한 기능을 한다.
   -b : 용량이 큰 파일을 받을 경우 back ground로 수행시켜줌
   -i [filename] : filename에 받아올 파일 목록을 저장한다음, -i옵션을 주게 되면, 여러파일을 한번의 명령으로 받아올 수 있다.



2. ls
# ls [option] [path]
 path에 해당하는 목록을 옵션에 맞게 출력한다.
 path는 생략할 수 있으며, 생략시 현재 폴더를 출력한다.
   -a : 숨김(.으로 시작하는) 속성의 파일도 출력함
   -l : 파일의 정보를 모두 보여줌 (생략시 기본적으로 파일이름만 출력)



3. cat
# cat [filename]
 filename을 Text 모드로 화면에 출력한다.
 주로 redirection과 같이 사용한다.
 ex) # cat a.txt b.txt c.txt > all.txt
         세 개의 파일을 하나의 파일로 내용을 합쳐줌



4. which
# which [option] prog_filename
 prog_filename의 이름을 가진 실행 프로그램의 위치를 찾아줌



5. du
# du [option] [path]
 디스크 사용 공간에 대한 정보를 출력함
   -s : 디렉토리의 크기를 보여줌
   -h : 사람이 보기좋게 MB 단위로 보여줌
 ex) # du -sh tmp
      tmp 폴더의 크기를 MB단위로 보기좋게 출력해줌
 cf) # df -h
      하드디스크의 남은 용량을 MB 단위로 보여줌

6. rm
# rm [option] [path]
 파일이나 디렉토리를 삭제해줌
   -R : recursive 하게 subdirectory까지 삭제함
   -f : 사용자에게 경고하지 않고 모두 지움
  만약 -Rf와 같은 옵션을 사용하게 되면, 주의를 필요로 한다. 실수하면, 되돌릴수 없는 상황이 될지도 모른다.



7. cp
# cp [option] [src] [dst]
 파일이나 디렉토리를 복사해줌
   -R : recursive 하게 subdirectory까지 모두 복사함
   -f : 사용자에게 경고하지 않고 모두 복사 (덮어쓰기시)


8. touch
# touch [filename]
 말 그대로 특정 파일을 건드려 줌
 만약 filename이 존재한다면, 해당 파일의 마지막 수정 시간을 현재 시간으로 갱신함
 만약 filename이 존재하지 않는다면, 빈 파일을 생성함



9. find
  파일을 찾아줌. 매우 중요함으로 잘 알아둘 것
   -name : 이름으로 파일 찾기
             ex) # find / -name "*.[ch]"
                   루트(/)에서 부터 *.c나 *.h의 모든 파일을 찾아줌
   -print : 찾은 파일을 화면에 출력
   -exec : 찾은 파일들에 순차적으로 대해서 shell 명령어를 수행시켜 줌
             ex) # find /tmp -name "*.txt" -exec rm {} \;
                   /tmp 폴더에서 모든 txt파일을 삭제해줌


10. tar
  압축과 해제를 해줌
   -c : 압축 파일을 새로 생성함
   -x : 압축 파일에서 부터 파일들을 압축 해제함
   -f [filename] : 주어진 압축 파일을 사용함
   -z : gzip을 통해 압축과 해제를 실행함


 

+ Recent posts