☆ 구부리고 다리 들어 올리기
① 무릎은 세우고 바로 눕는다.
② 무릎을 구부린 채로 위로 올린다. 그 상태로 5~10초간 유지한다.
③ 이렇게 올리고 내리는 동작을 10회씩 3회 반복한다.

☆ 1/2 윗몸 일으키기 ②
①바로 누워서 팔은 머리 뒤로 잡는다.
②무릎을 구부린다. 다리를 바로 펴고 할 때보다 더 쉽고 허리에 무리가 덜하다.
③상체를 들어올린다. 위의 운동과 마찬가지로 상체를 완전히 들어올릴 필요는 없다.
④10회씩 3회 반복한다.

☆ 다리 들어올리기
①바로 눕는다.
②다리를 직각으로 들어 올린다.
③다시 다리를 내리는데 바닥에 붙지 않게 해서 약 5초간 유지하다가, 바로 직각으로 세운다.
④하복부 근육을 강화 시켜 준다.(똥배를 빼는데 효과적!!)
⑤10회 실시한다.

☆ 훌라후프 돌리기
① 바로 서서 훌라후푸를 돌린다.
② 한번에 20분 이상 하는 것이 좋다.

☆ 다리 벌리기
① 하늘을 보고 눕고, 양팔은 넓게 벌린다.
② 다리를 직각으로 올린다. 무릎을 구부리지 않도록 주의한다.
③ 양 다리를 모은 상태에서 다리를 오른쪽으로 내렸다 올린다.
④ 내릴 때는 완전히 바닥에 붙이지 않는다.
⑤ 오른쪽, 왼쪽 각각 10회씩 한다.

자료 : http://www.gooddiet.com/

☆ 옆구리 늘이기
①팔은 깍지를 껴서 위로 든다.
②그 상태로 상체를 오른쪽으로 굽힌다. 그 상태로 5초간 유지한다.
③배의 힘으로 상체를 내리고 올리는 기분으로 한다.
④오른쪽, 왼쪽 모두 실시한다.
⑤10회식 3회 반복한다.
⑥양팔을 위로 향하게 하지 않고 하는 방법도 있다.
◆ 상체를 오른쪽으로 굽힐 때는 오른팔은 자연스럽게 내리고 왼팔만 위로 들어 오른쪽으로 보낸다.
◆ 양팔을 자연스럽게 몸통에 붙이고 허리만 좌우로 구부린다.

☆ 발뒤꿈치 보기!!
①바로 서서 주먹을 살짝 쥐어 몸통에 붙이고 선다.
②허리를 뒤로 돌리는데, 시선은 발뒤꿈치를 향하게 한다. 그 자세로 10초간 유지한다.
③오른쪽, 왼쪽으로 10회씩 실시한다.

☆ 윗몸 일으키기
①무릎을 세우고 바로 눕는다.
②윗몸 일으키기를 하는데, 왼쪽 팔꿈치가 오른 무릎에 닿도록 한다.
③상체만 들어올리는 것이 아니라 무릎도 같이 들어올린다.
④오른쪽, 왼쪽 각각 15회씩 실시한다.

☆ 옆으로 윗몸일으키기
① 무릎을 세우고 바로 눕는다.
② 무릎을 구부린 채로 오른쪽 다리 옆 부분이 모두 바닥에 닿도록 다리를 내린다.
③ 상체는 바닥에서 든다다.
④ 상체를 하늘로 향하게 하고 해도 무방하다.
⑤ 15~20회 반복한다.
⑥ 왼쪽으로 다리를 내리고, 같은 동작을 반복한다.

☆ 앉아서 옆구리 늘이기
① 다리를 최대한 벌리고 바닥에 앉는다.
② 발레리나 처럼…^^ 오른팔을 머리위로 둥글게, 왼팔은 오른쪽 허리부분으로 둥글게 한다.
③ 이 상태에서 상체를 왼쪽 다리 쪽으로 최대한 기울인다.
④ 상체가 앞으로 숙여지지 않도록 주의한다.
⑤ 좌우 각 10회씩 해준다.

자료 : http://www.gooddiet.com/



[e-목양실편지] 사랑하는 새로남 믿음의 가족 보세요.
















드디어 계절의 여왕 5월이 그 찬란한 모습을 드러내고 우리 앞에
서 있습니다. 저는 은총의 계절인 5월에 믿음의 가족 모두의 영혼도 찬란하게 빛나기를 기도드립니다.


점점 분주해지는 계절이지만 은혜 받는 일에 있어서는 정말 신속하게 뛰어들기를 원합니다. 하나님을 진심으로 예배하는 삶에서도 풍성한 열매를 맺기를 기대합니다.







5월 첫주일(5/1)은 어린이 주일로 한국교회에서 전통적으로 지키고 있습니다.


어린 아이와 청소년들은 현존하는 미래라 불립니다. 우리교회 미래가 우리 다음세대를 복음진리 위에 굳게 세움으로 환하게 밝아올 것을 믿습니다.


5월 5일(목)은 우리가 기다리는 ‘새로남 한가족축제’입니다. 혜천대학 종합운동장에서 펼쳐질 한마당 사랑의 잔치는 저의 마음을 기대감으로 설레게 합니다. 그 축복의 자리에서 여러분 모두를 만날 수 있기를 기대해도 좋겠지요!


특히 우리 교회가 탄방동에서 만년동으로 옮겨온 이후 만년동 시대를 열어 가는 주역으로 오신 모든 교우들을 진심으로 환영합니다.


이 축제를 위하여 수고하신 모든 교우들께 진심으로 감사의 말씀을 드리고 싶습니다.


5월 8일(주일)은 어버이주일로 그리고 5월15일(주일)은 교사주일로 기념합니다.


부모님의 심정으로 교사의 심정으로 시대를 바라보는 믿음의 가족들이 많아 졌으면 좋겠습니다. 희망부에 속한 모든 어르신들이 건강한 노후를 새로남 울타리 안에서 늘 경험하기를 축복합니다. 또한 400명의 주일학교 교사들께 저의 사랑을 보냅니다. 저의 마음은 새로남지 5월호 목양실 편지에 기록되어 있습니다. 금번 새로남지를 읽어 내려가다가 몇 번이나 가슴 뭉클한 사연을 접할 수 있었습니다. 그렇습니다. 우리의 교육현장은 감동을 맛보는 현장임을 다시 한번 체험했답니다.

5월 22일부터 25일까지 미국 시카고에서 동포교회를 섬기시면서 가정과 경제에 탁월한 안목을 가지신 김동윤 장로님께서 오셔서 가정과 경제세미나를 인도하십니다. 기대가 됩니다.


5월29일(주일)은 우리교회 설립감사주일이며 우리교회가 만년동의 시대를 연 첫 번 예배가 드려진지 1년이 되는 주일입니다. 그 날의 감동이 우리의 예배와 삶에 진하게 배어 있기를 소망해 봅니다. 설립기념을 감사하는 마음으로 헌혈행사를 합니다. 많은 교우들이 주님의 사랑을 생각하면서 헌혈의 현장에 서면 좋겠습니다.


5월1일(주일) 저녁예배는 우리에게 특별한 의미가 있는 예배입니다. 우리교회와 한국대학생선교회(CCC)가 손을 잡고 충남대학교와 한국과학기술원(KAIST)을 믿음으로 입양하는 예배입니다. 우리교회에 속한 대한예수교장로회 총회와 CCC간의 공동협약이후 지역교회로서는 처음 가지는 귀한 행사입니다. 저는 이번 일을 계기로 우리교회 대학부와 청년부가 다시금 소명을 확인하고 영적인 역동성을 제고하는 기회가 될 줄로 확신합니다.


우리의 기도대로 우리교회 대학부 마하나임과 청년부 새청이 대전과 중부권의 젊은이 사역의 기수로 더욱 당당하게 서기를 원합니다.


5월8일(주일)저녁예배는 낮은 울타리 사역으로 잘 알려지신 신상언 문화선교사님을 모시고 요즈음의 문화트렌드에 대해서 메시지를 듣는 복된 시간입니다. 우리의 자녀들이 다 나와 함께 문화를 통하여 접근하는 악령들의 시도를 분별하고 영적으로 무장하는 시간이 되기를 기대합니다.

5월 15일(주일) 저녁예배는 훈련생헌신의 밤으로 드립니다. 우리교회가 강군정병을 육성하는 안디옥교회같은 교회 되었으면 좋겠습니다.


5월은 가정의 달 교회 밖의 시민들도 가정의 소중함을 이구동성으로 외치고 있습니다. 이러한 때에 우리의 평소의 소원대로 우리가정은 교회같고 우리교회는 가정같았으면 좋겠습니다. 사랑하는 분께 저의 따뜻한 마음을 전하고 싶습니다.


작년 겨울, 온 몸으로 은하수 전구를 옷 입고 눈부시게 희망의 거리를 연출했던 느티나무에도 새순이 돋았습니다. 우리 모두의 영혼에도 주님사랑 교회사랑 맡겨진 사람 사랑의 새순이 돋았으면 좋겠습니다.


우리 교회 옆 한밭 수목원이 어제 문을 열었습니다. 전국에서 유일하게 도심속에 조성된 인공수목원입니다. 3년 이상을 준비하여 개원한 한밭수목원은 약 12만평 규모이며 나무와 식물등 486종 약 62만본이 식재되어 있습니다. 물론 무료입니다. 여러 종류의 나무가 어우러져 자연의 걸작을 보이고 있습니다. 시민들에게 또 한번의 산뜻한 자연체험을 제공합니다.


우리 교회도 나이, 성별, 직업, 예수 믿은 연륜, 관심, 취미의 다양함이 오직 주님사랑으로 연결되어 우리 자신은 물론 대전시민에게 삶의 기쁨과 영혼의 산뜻함을 제공하는 축복의 현장으로 굳게 서기를 기대합니다.


하나님께서 은혜의 선물로 주신 5월의 주인공으로 서십시오!


우리는 결코 들러리가 아닙니다.


여러분의 삶에 주님의 은총이 늘 동행하시기를 기도드립니다.


저를 위한 여러분의 사랑 담긴 기도와 순종에 늘 감사의 마음을 가지고 있습니다.


“당신이 이 세상에 존재함으로 인해 우리에게 얼마나 큰 기쁨이 되는지”(당신은 사랑받기 위해 태어난 사람)를 즐겨 부를때마다 마음속에 감사와 감동의 파문이 이는


오정호 목사 드림

[생명나무를 붙잡아야 한다] - 창 2:7~8, 15~17

신앙이란 이론과 순종의 관계를 통하여 하나님의 무한하신 자원에 참예하는 것이다.

신앙은 반드시 반 이성적인 것은 아니지만 반드시 초 이성적인 것이 있다.

요1 1:1~3, 요 10:10 참조

단순히 생명을 얻는 것과 풍성히 얻는 것은 다르다

창 2:16~17 - 생명나무는 먹을 수 있다.
             선악을 알게 하는 나무 실과는 먹을 수 없다.

    선악을 알게하는 나무를 선택한 사람 - 스스로 선악을 규정하는 지식이 있으므로 호불호가 뚜렷하고, 스스로의 옭고 그름을 분명히 따진다.
    생명나무를 선택한 사람 - 선악간 분별은 오직 하나님께 맡겨버린다.

선택의 순간 선악, 호불호가 아니라 생명이 있느냐 없느냐로 판단하라.

찬양 "주 안에 있는 나에게~" 3절

선악을 알게하는 나무를 선택하면  
         - 책임전가, 불평, 원망하게 된다.
         - 그 대상이 스스로의 마음을 사로잡아 평생에 걸림돌이 된다. 부자유하게 된다.
           마 18:32~35 참조
         - (예수를 믿는다 하는 사람에게) 희생당했다는 느낌을 가지도록 한다.

생명나무를 선택하면 모든 일들이 생산적이 된다.
[능력받아야 산다] - 롬 8:26~28

8.26 : 7.24절 참고 '도우시나니' - 없애지 않고
       우리의 약점 -시공의 제한
                    무엇이 최선인지 잘 모른다.
                    ex) 히스기야가 기도로 하나님께 받은 마지막 15년간의 삶이 실제론 문제가 많은 삶이었다. - 곳간을 모두보여줘 나중에 탈취당하게 된것, 선지자들 핍박, 아들 므낫세
       누가 도우시나 ?  - 성령
       어떻게 도우시나 ? - 기도로

8.27 : 성령이 육신을 지배하는 삶 - 9절 참고
      
       "성령이여 나를 홀로 주관하여 주소서"
          
       5,6절 참고 - 성령이 나의 생각을 주장하신다.
       1,2절 참고 - 성령의 능력이 구원해주신다.

       집중력있고 순발력 있는 기도가 큰 힘이 된다.
       기름부음있는 찬양이 큰 힘이 된다.

       내가 하는 하나님의 일은 많지만 내가 하는 모든 하나님의 일에 나를 향한 하나님의 뜻이 있는 것은 아니다.
       하나님의 뜻은 성령의 생각으로 말미암는다.
       셩령의 생각을 잘 모르겠거든 성령께 물어보라

       10,12,13절 참고
       성령의 능력으로 몸의 행실을 죽이라.
       (찬양 - "주의 성령 이곳에 가득해 ~")

8.28 : 이미 결정된 것 가지고 고민하지 말고 내가 더 잘하는(잘할 수 있는) 것에 목숨을 걸어라.
       성령 안에서 모든 약점을 자유롭게 하라.
      

출처 : 유닉스 쉘 바이블 (엘리 퀴클리 지음)에서 발췌.
3.1 grep 명령어


grep : 파일 전체를 뒤져 정규표현식에 대응하는 모든 행들을 출력한다.
egrep : grep의 확장판으로, 추가 정규표현식 메타문자들을 지원한다.
fgrep : fixed grep 이나 fast grep으로 불리며, 모든 문자를 문자 그래도 취급한다. 즉, 정규표현식의 메타문자도 일반 문자로 취급한다.


3.2 정규표현식을 사용하는 grep의 예제
# grep NW datafile
# grep NW d* (d로 시작하는 모든 파일에서 NW를 포함하는 모든 행을 찾는다.)
# grep '^n' datafile (n으로 시작하는 모든 행을 출력한다.)
# grep '4$' datafile (4로 끝나는 모든 행을 출력한다.)
# grep TB Savage datafile (TB만 인자이고 Savage와 datafile은 파일 이름이다.)
# grep 'TB Savage' datafile (TB Savage를 포함하는 모든 행을 출력한다.)
# grep '5.' datafile (숫자 5, 마침표, 임의의 한 문자가 순서대로 나타나는 문자열이 포함된 행을 출력한다.)
# grep '.5' datafile (.5가 나오는 모든 행을 출력한다.)
# grep '^[we]' datafile (w나 e로 시작하는 모든 행을 출력한다.)
# grep '[^0-9]' datafile (숫자가 아닌 문자를 하나라도 포함하는 모든 행을 출력한다.)
# grep '[A-Z][A-Z] [A-Z]' datafile (대문자 2개와 공백 1개, 그리고 대문자 하나가 연이어 나오는 문자열이 포함된 행을 출력한다.)
# grep 'ss* ' datafile (s가 한 번 나오고, 다시 s가 0번 또는 여러번 나온 후에 공백이 연이어 등장하는 문자열을 포함한 모든 행을 출력한다.)
# grep '[a-z]{9}' datafile (소문자가 9번 이상 반복되는 문자열을 포함하는 모든 행을 출력한다.)
# grep '(3).[0-9].*1 *1' datafile (숫자 3,마침표,임의의 한 숫자,임의 개수의 문자,숫자 3(태그),임의 개수의 탭 문자,숫자 3의 순서를 갖는 문자열이 포한된 모든 행을 출력한다.)
# grep '(north로 시작하는 단어가 포함된 모든 행을 출력한다.)
# grep '' datafile (north라는 단어가 포함된 모든 행을 출력한다.)
# grep '<[a-z].*n>' datafile (소문자 하나로 시작하고, 이어서 임의 개수의 여러 문자가 나오며, n으로 끝나는 단어가 포함된 모든 행을 출력한다. 여기서 .*는 공백을 포함한 임의의 문자들을 의미한다.)


3.3 grep에 옵션 사용
# grep -n '^south' datafile (행번호를 함께 출력한다.)
# grep -i 'pat' datafile (대소문자를 구별하지 않게 한다.)
# grep -v 'Suan Chin' datafile (문자열 Suan Chin이 포함되지 않은 모든 행을 출력하게 한다. 이 옵션은 입력 파일에서 특정 내용의 입력을 삭제하는데 쓰인다.
# grep -v 'Suan Chin' datafile > black
# mv black datafile
# grep -l 'SE' * (패턴이 찾아진 파일의 행 번호 대신 단지 파일이름만 출력한다.)
# grep -w 'north' datafile (패턴이 다른 단어의 일부가 아닌 하나의 단어가 되는 경우만 찾는다. northwest나 northeast 등의 단어가 아니라, north라는 단어가 포함된 행만 출력한다.)
# grep -i "$LOGNAME" datafile (환경변수인 LOGNAME의 값을 가진 모든 행을 출력한다. 변수가 큰따옴표로 둘러싸여 있는 경우, 쉘은 변수의 값으로 치환한다. 작은따옴표로 둘러싸여 있으면 변수 치환이 일어나지 않고 그냥 $LOGNAME 이라는 문자로 출력된다.)


3.4 egrep
egrep(extended grep) : grep에서 제공하지 않는 확장된 정규표현식 메타문자를 지원  한다. grep와 동일한 명령행 옵션을 지원한다.

3.4.1 egrep 예제
# egrep 'NW|EA' datafile (NW나 EA가 포함된 행을 출력한다.)
# egrep '3+' datafile (숫자 3이 한 번 이상 등장하는 행을 출력한다.)
# egrep '2.?[0-9]' datafile (숫자 2 다음에 마침표가 없거나 한 번 나오고, 다시 숫자가 오는 행을 출력한다.)
# egrep ' (no)+' datafile (패턴 no가 한 번 이상 연속해서 나오는 행을 출력한다.)
# egrep 'S(h|u)' datafile (문자 S 다음에 h나 u가 나오는 행을 출력한다.)
# egrep 'Sh|u' datafile (패턴 Sh나 u를 포함한 행을 출력한다.)


3.5 고정 grep 과 빠른 grep
fgrep : grep 명령어와 동일하게 동작한다. 다만 정규표현식 메타문자들을 특별하게 취급하지 않는다.
# fgrep '[A-Z]****[0-9]..$5.00' file ([A-Z]****[0-9]..$5.00 이 포함된 행을 출력한다. 모든 문자들을 문자 자체로만 취급한다.)


 출처 : empas blog 시스템 뽀사불기 ~~^=,.=^~~ (syk1000)

안녕하세요.. 그동안 너무 변화가 없었던 것 같아서 2005년 봄을 맞아 예전의 약간은 칙칙한 분위기를 벗고 거의 완벽하게 블로그를 지원하도록 바꿔봤습니다.

  도움주신분들
           zog 블로글 - http://www.zog.co.kr
           웹피스 님  - http://webpeace.uu.st/
                        제가 웹피스님의 구성이 넘 맘에 들어서 이분 꺼를 많이 따라했습니다. 웹피스님 홈피에도 글을 남겼는데요..제가 조그는 지금 시작인지라 잘 몰라서 참고로 했습니다. 좀 쓰다 저에게 맞게 수정토록 하겠으니 너그러이 이해해주시길...
           Fudagy 님 - 스킨을 올려주셨는데 지금은 홈피가 안들어가지는군요...
           알릭  님     - http://alik.bo.to
           그외 여러 플러그인, 유용한 팁을 제공해주신 분들께 감사드립니다.

앞으로 많이많이 사용해주세요....
안녕하세요
제가 아침에 극동방송 듣고 오다가 들은 설교인데요 아주 은혜가 많이 되었던지라 여기에 올립니다.

-------------------------------------------------------------------------------------------
대체로 국경일이나 공휴일이 되면 많은 사람들은 쉬고 또 가족과 함께 휴가를 가서 즐겁게 보내려는
생각을 하고 있습니다. 절기는 쉬는 것으로 모두 생각합니다. 그래서 너무 쉬는 날이 많은 것은 좋지
않습니다. 우리나라에서도 공휴일이 너무 많아서 식목일과 제헌절은 공휴일에서 제외한다고 발표하
기도 했습니다. 실제로 로마가 멸망한 것은 공휴일이 너무 많았다고 합니다. 일년에 백 칠십 며칠을
놀았다고 합니다. 그리고 법이 너무 까다롭고 많아서 로마가 망했다고 합니다. 세 번째는 도덕적으로
너무 타락해서 로마가 망했다고 말하고 있습니다. 노는 것, 이것은 일을 하기 위해서 잠깐 휴식이 필
요합니다. 너무 노는 것이 지나치게 되면 나태하게 되고 또 타락하게 되고 방황하게 되는 것입니다.
기독교의 절기는 노는 절기가 아닙니다. 쉬는 절기가 아닙니다. 우리를 새롭게 하는 절기입니다. 기독
교의 절기는 육적인 쾌락을 위해서, 육적인 안식을 위해서 주는 것이 아니라 우리에게 영적인 충전과
우리에게 새로운 새 생명으로, 능력으로 무장하는 것이 기독교의 절기인 것입니다.
  기독교의 절기 가운데 가장 큰 절기는 두말 할 것도 없이 부활절입니다. 예수님께서 이 땅에 오셔서
우리를 위하여 죽으시고 우리를 위해 살아나신 이 고난주간과 함께 있는 이 부활절은 우리에게 생명
줄 과도 같은 것입니다. 고난주간과 부활절에 우리는 주 예수 그리스도와 함께 고난에 참여하고 부활
의 영광을 누려야 하는 것입니다. 기독교는 감상의 종교가 아닙니다. 기독교는 명상의 종교가 아닙니
다. 지식의 종교가 아닙니다. 지식으로 아무리 기독교에 대한 교리를 다 이해했다고 할지라도 예수 그
리스도를 십자가에 못 박히신 주님을 나의 구주로 영접한 경험이 없으면 그것은 생명이 없는 성도인
것입니다. 우리는 성령으로 거듭나고 예수 그리스도의 보혈의 은총을 내 뼛속 깊이깊이 이해하고 주
의 피가 내 안에, 주의 살이 내 생명 안에 있어야 하는 것입니다. 예방주사를 맞은 사람은 모든 전염병
이나 모든 병에서 자유함을 받듯이 예수 그리스도의 부활에 대한 고난에 대한 생명을 얻은 사람은 이
세상에 있는 어떤 저주와 불행이 그를 넘어뜨릴 수가 없는 것입니다. 일년에 한 번씩 찾아오는 이 고
난주간과 부활절에 주님을 만나는 경험, 십자가에 대한 이 새로운 경험만이 우리의 인생을 새롭게 하
고 삶의 새로운 능력을 가져다주는 것입니다.
  예수께서 이 땅에 오셨습니다. 십자가를 지셨습니다. 이 사건 하나가 우리에게 가장 소중한 우리 교
회의 자랑이며 우리의 힘이며 우리의 생명이 되는 것입니다. 그래서 어떤 분들은 기독교의 탄생을 성
탄절 12월 25일이라고 하는데 그 말도 어렴풋이 맞기는 맞습니다. 그러나 확실한 것은 기독교의 생일
은 부활절입니다. 고난주간입니다. 마치 어머니가 새 생명을 낳은 것처럼 주님이 십자가에 피 흘려 죽
으심으로 교회가 탄생되고 성도가 탄생된 것입니다. 그래서 12월 25일은 예수님의 탄생일을 정한 것
이지 그 날이 확실한 것은 아닙니다. 그러나 부활절은 확실한 것입니다. 예수님께서 33년 동안 계시다
가 이 부활절에 이르는 이 모든 하루하루 시간 시간에 대한 것은 성경이 세밀하게 기록하고 있습니
다. 오늘 예수님은 예루살렘에 나귀를 타고 입성하셨습니다. 내일 월요일은 주님께서 성전에 들어가
셔서 깨끗하게 청소하시는 사건이 나옵니다. 화요일은 많은 바리새인들과 성전에서 질문을 받고 거기
에 대한 대답을 하셨습니다. 그리고 수요일에는 가룟 유다가 배반합니다. 목요일에는 겟세마네 동산
에서 기도하시고 제자들과 성만찬을 베풀고 붙들려 가셔서 금요일에 로마 총독 빌라도에게 재판을 받
고 제사장에게 재판을 받아서 아홉시에 십자가를 지시고 오후 네 시에 운명하시게 되는 것입니다. 무
덤에 묻히셨다가 주일날 아침에 부활하신 것 이것은 정확하게 역사요, 놀라운 하나하나의 사건으로
기록되어 있습니다. 그렇습니다. 예수님은 이 땅에 오셔서 우리를 위하여 죽으시고 우리를 위하여 살
아나셨습니다. 주님이 죽으심으로 우리가 살게 되고 주의 십자가로 말미암아 우리는 죄 용서함을 받
은 것입니다. 우리가 아무리 용서함을 받아서 인간관계의 죄악이 화해가 되고 감옥에서 자기가 지은
죄의 대가를 다 받았다 할지라도 그리스도께서 우리 죄를 위하여 씻어 주신 보혈의 은총이 아니면 그
죄악은 내 몸 안에 깊이 뿌리 박혀 있는 것입니다. 그 흔적을 지울 수가 없습니다. 그 죄는 영원히 내
것인 것입니다. 하나님 앞에 해결함을 받아야 죄악의 완전한 자유와 정결함을 얻게 되는 것입니다. 주
님이 십자가를 지심으로 우리 인간의 모든 저주와 질고를 주님은 다 해결하여 주셨습니다. 십자가는
우리를 치료하는, 우리를 바로 세우는, 우리를 모두 살려 주는 생명이 되는 것입니다. 저희가 몇 년 전
에 필리핀에 선교여행을 간 일이 있습니다. 갔다가 해수욕장에서 우리 모든 장로님들과 집사님들, 안
수집사님들과 함께 수영을 하는데 옆에 신혼여행 온 한국사람 부부가 부인을 안고 그 신랑 되는 분이
당황하면서 의사를 찾고 살려달라고 했습니다. 알고 보니 노를 젓다가 잘못 무리를 해서 신부 팔이 빠
져나간 거예요. 그래서 팔이 허수아비처럼 흔들리면서 안았는데 흔들흔들 하면서 고통스럽게 소리를
지르고 사람을 찾았어요. 마침 우리 교회에 김철수 산부인과 원장이 같이 갔습니다. 나는 산부인과가
이럴 때 뭐 할 수 있겠냐? 했는데 놀라운 일이 일어났습니다. 집사님께서 딱 안더니만 팔을 가지고 틀
면서 딱 집어넣으니까 제 자리에 들어가는 거예요. 뼈가 떨꺼덕 하면서 들어가더니 돌려보라고 하니
까 그냥 한 순간에 회복이 되는 거예요. 그렇습니다. 기독교는 명상이 아닙니다. 주님을 직접 만나는
것입니다. 내 모든 못쓰게 된 내 몸과 마음을 십자가에 피 흘리신 주님의 손으로 우리를 제 자리에 넣
어주시고 치료하여 주시고 용서하여 주시고 회복하여 주시고 탕감하여 주시고 살려 주시는 분이 바
로 예수 그리스도인 것입니다. 모든 부끄러움과 죽음과 저주와 멸망에서 우리를 건져주시는 손이 십
자가의 손이요 우리 주 예수 그리스도의 구원의 손이 되는 것입니다.
  사람은 세 가지가 중요하다고 합니다. 하나는 잘 태어나는 것입니다. 하나는 잘 사는 것입니다. 출세
해서 성공하여 잘 사는 것입니다. 하나는 잘 죽는 것입니다. 세 가지가 다 소중하다고 말합니다. 그러
나 예수 그리스도는 이 세 가지가 다 모두 보통 우리들의 삶보다도 비교할 수 없는 정말 불쌍한 삶을
사셨습니다. 태어나신 것은 마구간에 태어나셨고 사신 것은 목수로 사셨고 마지막은 십자가에 가지가
지의 욕을 얻어먹고 침 뱉음을 받고 옷이 다 벗겨져서 엄청난 부끄러움으로 양 손, 양발에 못이 박히
고 옆구리에 창이 찔려서 모든 피를 흘리시면서 주님은 마지막 운명하셨습니다. 이러한 예수 그리스
도를 오늘 우리는 주님을 나의 구주로 믿고 주님을 처참하게 못 박았던 그 로마의 황제가, 로마의 총
독이 예수를 나의 구주로 영접하고 기독교 국가가 되었습니다. 그렇게 죄인으로 하나의 비참한 사람
으로 짓밟았던 하나의 생명을 로마는 기독교국이 되어서 그 예수 그리스도를 오늘까지 증거 하는 하
나님의 백성이 되었습니다. 오늘 온 세계에 있는 가장 능력 있는 왕들이 가장 지성인들이 가장 최고
의 문화인들이 최고로 잘 사는 분들이 2천년 동안 예수 앞에 무릎을 꿇고 수많은 왕의 왕들이 그의 십
자가의 보혈의 은총을 받아서 살아가고 있는 것입니다. 예수 그리스도 그는 우리를 위하여 마구간에
오셨고 우리를 위하여 낮아지시면서 가난하게 사셨고 그는 우리를 위하여 십자가에 비참하게 피 흘
려 돌아가신 것입니다.
[#!_보이기..|숨기기.._!#]  우리는 주 예수 그리스도로 말미암아 생명을 얻었습니다. 살아났습니다. 우리는 주님의 오신 그 모
든 삶과 걸어가신 삶과 마지막 우리를 위하여 돌아가신 그 죽음으로 말미암아 우리는 죽음의 문제가
해결된 것입니다. 이제 우리는 죽지 않습니다. 죽음을 두려워하지 않습니다. 죽음이 없습니다. 우리
는 천국으로 갈 뿐인 것입니다. 그래서 우리는 죽음의 문제에 대해서 두려워하거나 불안하거나 걱정
하지 않습니다. 이렇게 사는 자가 이 세상에서도 잘 삽니다. 예수님의 십자가의 죽음을 생각하고 살아
야 사는 것도 잘 삽니다. 오늘 많은 사람은 사는 데에 맞추어져 있습니다. 행복에 맞추어져 있습니다.
그렇기 때문에 행복할 수도 없고 그렇기 때문에 잘 살 수도 없습니다. 우리는 항상 십자가를 지신 주
님을 바라보고 살기 때문에 사는 것에 맞추지 않고 죽음에 맞추기 때문에 우리는 사는 것도 잘 살 수
있고 죽음도 잘 죽을 수 있고 우리는 이 모든 일에 승리할 수 있는 것입니다. 우리가 행복한 것은 예
수 그리스도의 죽음에서 온 것입니다. 그리스도와 함께 죽는 자 만이, 죽음을 이긴 자 만이 행복하게
살 수 있습니다. 우리는 걱정하지 않고 살아갈 수 있는 사람, 오직 예수 그리스도가 나의 구주가 되어
서 그의 보혈로 씻음 받은 자 뿐인 것입니다. 우리는 주님의 죽음을 생각하면서 항상 우리의 죽음을
준비하고 있고 우리 주 예수 그리스도의 십자가를 늘 바라보면서 우리는 최후 승리의 죽음도 주님과
함께 하나님의 나라에 갈 줄로 믿고 우리는 하루하루 한 발걸음 한 발걸음을 걸어가신 골고다의 길로
걸어가는 것이 성도들의 삶인 줄로 믿습니다.
  오늘 많은 사람들이 사는 데에 맞추면 못삽니다. 실패의 삶이 됩니다. 항상 잘 죽으려고 살아야 됩니
다. 예수님의 십자가의 죽음을 생각하고 살아야 이 세상에서 부끄러움 당하지 않습니다. 오늘 한국교
회가 힘이 없고 능력이 없는 것은 교인은 그전보다 엄청나게 많아졌는데도 모두 사는 데에 맞추어져
있기 때문에, 죽음 앞에 벌벌 떨고 안 죽으려고 하기 때문에 비겁하게 죽고 불행하게 죽고 우리의 사
는 삶도 부끄럽게 살아가는 것입니다. 삼일 독립운동이 일어났을 때에 우리 한국 교회는 교인이 겨우
3%, 5%로 안 되었는데 일본이 두려워서 쩔쩔매었습니다. 이겨 낼 수 없었습니다. 교인이 30%가 되어
도 오늘 한국교회가 힘이 없는 것은 모두 죽음에 대한, 고난에 대한 아무 의미가 없기 때문입니다. 십
자가 없는 교인은 두렵지 않습니다. 마귀가 갖고 노는 것입니다. 죽으면 사는 것 이 확실한 진리 위에
우리가 바로 서야 할 줄로 믿습니다. 오늘 이 시대는 너무 고난에 대해서 의미를 모른다고 합니다. 오
늘 젊은 사람들 큰 소리 치는 사람들도 고난에 대해서 너무 모릅니다. 한국교회가 십자가를 모르면 죽
은 것처럼 사람은 고난을 알아야 됩니다. 그래서 요사이 386세대를 우리 교회 오신 어떤 분이 그렇게
말씀했습니다. 386은 ‘3’ 삼일절을 모르고, ‘8’ 팔 일 오 모르고, ‘6’ 6.25 모르고 그러니까 이거 우리가
세상에 어떻게 지나왔는지 이 나라의 뿌리인 3.1절, 6.25 이 공산주의의 이 엄청난 처참한 고통당한
이 나라 슬픔과 이 불행을 모르는 거예요. 우리는 과거를 모르면 안 됩니다. 그래서 기독교의 절기는
행사하는 절기가 아닙니다. 참여하는 절기입니다. 십자가에 대해서 정확하게 경험하는 절기가 성도들
의 삶이 되어야 성도는 살아나는 것입니다. 삼일절, 노래 부르고 끝납니다. 기미년 삼월 일일 정오 그
러고 다 끝납니다. 우리는 그렇지 않습니다. 예수님의 십자가의 고난을 경험해야 합니다. 한국교회의
능력이 지난날에 얼마나 순교자가 많았습니까? 얼마나 감옥에서 고문당하고 돌아가신 분들이 얼마
나 많았습니까? 어떤 어려움도 이 분들은 천국 생각하고 예수님 십자가 바라보고 이겨냈습니다. 제
일 어려운 분들이 가족들이 아기들 밖에 와서 엉엉 울고 부인과 부모들이 엉엉 울 때 거꾸로 매 달려
매 맞으면서 너 예수를 한 마디만 여기서 안 믿는다고 그러고 나가서 믿으라고 그래도 그렇게 못합니
다. 그럴 수 없습니다. 예수님이 그렇게 안 사셨는데 그럴 수 없습니다. 하고 기꺼이 순교한 분들이 얼
마나 많습니까? 죽음, 그 분들은 살았습니다. 그 자손들도 살았습니다. 영원히 영원히 삽니다. 오늘
모두 고난을 피해 살다보니 자살 해 죽습니다. 값어치 없는 죽음들이 너무 많습니다. 우리 모두 예수
그리스도와 함께 십자가에 고난당하신 주님을 바라보고 살아가는 성도들 되기를 바랍니다. 지난날의
우리 고난을 잊으면 안 됩니다. 눈물 젖은 빵을 잊어버리면 안 됩니다. 개떡을 먹었던 지난날을 잊으
면 안 됩니다. 나뭇잎 가져다가 곡식을 먹지 못하고 온 몸이 퉁퉁 붓고 학교 가면 애들 배가 아이 밴
것같이 다 튀어나왔었습니다. 다 90%가 영양실조였습니다. 저도 소나무 껍질을 얼마나 먹었는지 모
릅니다. 6.25사변이 나고 막 망치로 두들겨서 밀가루를 조금 넣어 가지고 소나무 껍질만 계속 먹으면
화장실에 가서 이게 안 나오는 거예요. 그래서 손으로 껍질을 잡아 당겨서 꺼낸 일이 한 두 번이 아니
었습니다. 여러분, 고난을 우리가 너무 쉽게 잊어버립니다. 그러니까 일본이 우리를 우습게 알고 고난
을 잊어버린 민족을 다시 삼키려고 하고 있고 중국도 우리를 우습게 알고 다시 넘어뜨리려고 하는 것
입니다. 어제 일인데, 우리가 어찌 잊을 수 있습니까? 우리 모든 사랑하는 성도들 이 땅에 사는 날 동
안 한 순간도 긴장을 잃지 않고 살아가는 성도들 되기를 바랍니다.
  한국교회가 사는 길은 오직 십자가입니다. 오늘 많은 교회들이 십자가가 없다보니 신학을 지원하는
신학생들도 아 목사가 되면 좋은 에쿠스 타고 다니는구나, 야 당회장실이 장관실보다 낫구나, 야 당회
장 되니까 온갖 대접받고 야 저렇게 영광스럽게 사는 길이 없구나. 그래서 모두 다른 길 가다가도 목
사로 들어오는 길이 너무 많습니다. 목사는 그런 것 아닙니다. 목사의 길은 고난의 길이에요. 눈물의
길이에요. 십자가 지는 길이에요. 마지막에 어려운 일을 당하면 순교하는 길이에요. 앞장서서 교회 살
리고 양떼 살리고 십자가의 죽음의 길로 가는 게 목사의 길이에요. 오늘 한국교회가 이런 각오가 없
고 희생이 없고 헌신이 없고 십자가가 없는 이러한 주의 종들이 너무 한국교회를 어렵게 하고 있습니
다. 예수 따라가면 승리합니다. 예수님이 십자가 지시고 하나님 보좌 우편에 앉듯이 십자가 짊어지고
가는 자가 하나님 보좌 우편에 앉는 영광이 주어질 줄로 믿습니다.
  톨스토이의 ‘왕과 청소부’라는 그런 책이 있습니다. 이 이야기에 보면 왕이 잔치를 베풀어서 많은 사
람을 초청을 했는데 이 우편에 왕이 있는 자리에 누구를 앉게 하느냐? 신하들에게 말했습니다. 손이
제일 험한 분을 내 옆으로 데려오너라. 그래서 모두 손을 만져 인사하고 악수 해 보면 전부 손이 반들
반들 핸드크림 발라 가지고 전부 반들반들했습니다. 다 안되었어요. 나중에 보니까 한 분이 들어오는
데 손이 짐승의 손 같아요. 발과 같아요. 얼마나 거치른지 아 누구십니까 어디서 오셨습니까? 얘, 저
는 청소부입니다. 청소하다가 늘 흙 만지고 돌 만지고 쓸다가 손이 얼마나 거칠어졌는지 이리 따라오
세요. 폐하가 부르십니다. 그래서 왕의 옆에 앉았습니다. 여러분, 예수님은 두 개의 십자가가 있다고
하잖아요. 땅에 오셔서는 열심히 목수 일을 하신 한 편에 못 박힌 목수의 못, 또 한편으로는 우리 인류
를 위해서 흘리신 보혈의 못이 박힌 이 양 손으로 우리를 구원하신 거예요. 오늘 교회에 사랑하는 성
도들 예수 믿어서 이 세상 살 때에 예수님 십자가 생각하고 험한 일 하시고 고난을 피하지 말고 담대
하게 주님 십자가 생각하고 참고 나아갈 때 주님 보좌 우편에 앉는 축복이 주어질 줄로 믿습니다.
  예수님은 어머니를 보시고 “여자여 보소서 아들이니이다.” 저를 보시라고 말했습니다. 주님은 오늘
도 나를 향하여 보라고 말씀하고 있습니다. 김 목사 나를 바라보라. 김 집사 나를 보라고 말하고 있습
니다. 내가 너를 위하여 진 이 십자가, 내가 너를 위하여 흘리는 피, 내가 너를 위하여 흘리는 이 고난
과 이 부끄러움과 고통을 보라고 주님은 말씀하고 있습니다. 주님을 만나야 합니다. 골고다의 주님 나
를 위해서 십자가에 피 흘려 돌아가신 주님을 이렇게 경험해야 하는 것입니다. 누구든지 이 경험을 하
지 아니하면 천국 시민이 될 수 없습니다. 러시아의 작가 도스토예프스키도 9년 동안 시베리아 유배
생활에서 십자가 지신 주님을 바라보았습니다. 그 이후에 그는 ‘죄와 벌’이라고 하는 세계적인 작품
이 나올 수가 있었습니다. 헨델은 반신불수가 되어서 감옥에 갇힌 후 예수님을 만났습니다. 그래서 세
계적인 명곡 헨델의 ‘메시아’가 나올 수 있었습니다. 렘브란트라고 하는 네덜란드의 세계적인 화가가
있습니다. 잘 살고 행복할 때는 주님을 만날 수 없었습니다. 십자가 없는 삶, 주님을 만날 수 없었습니
다. 그는 가난해졌습니다. 실패했습니다. 부인도 죽었습니다. 한없는 외로움과 허전함과 죽고 싶을
때 그도 주님을 만나서 그 이후에 작품은 영혼을 그리는 대표적인 작품이 ‘야경’이라는 작품이 아닙니
까? 새로운 그림을 그렸습니다. 새로운 작품이 나왔습니다. 새로운 음악이 되었습니다. 새로운 정치
인이 되었습니다. 미국의 부시 대통령도 방탕의 길로 가다가 십자가 지신 주님을 만나서 새 사람 되
지 않았습니까? 제가 이번에 국가조찬기도회에 참석을 했는데 상원의원이 말했습니다. 설교를 상원
의원이 하더라고요. 여러분, 저는 예수 믿지 않았습니다. 나는 하나님 믿지 않았습니다. 그러나 내 열
여섯 살 된 아들이 교통사고로 생명을 잃고 나는 이 아들을 살리기 위해서 이 아들 때문에 몸부림치
고 있을 때 십자가를 지신 주님을 만났다고 했습니다. 저도 청년 때에 주님을 만났습니다. 나는 이 세
상에 내가 잘난 줄 알았더니 예수님이 나를 위해 죽으셨다는 것을 알고 나는 그 이후로 통곡하며 주님
을 사랑하게 되었습니다. 주님, 당신이 나 위하여 죽으셨군요. 당신이 나를 위하여 십자가에 피 흘려
죽으셨군요. 나는 이 세상에 가장 큰 죄인입니다. 주님 앞에 울며불며 주님을 사랑했습니다. 그래서
어떤 어려움이 있고 이 세상에 고난이 있어도 저는 오늘날까지 주님을 따라간 이유가 주님이, 십자가
지신 주님이 나를 보라 내가 너를 위하여 피 흘렸다고 하는 주님을 만나게 된 것이기 때문입니다. 오
늘 현대인들은 만나야 할 예수를 만나지 않고 너무 헛된 세속문화 온갖 음란과 퇴폐와 불의와 우상숭
배와 물질문화와 만나서 정신적으로 도덕적으로 방황하고 타락하고 있는 것입니다. 십자가 지신 주님
을 만나야 새로워집니다. 담대해집니다. 깨끗해집니다. 세상을 이깁니다. 가족과 민족을 구원해 낼 줄
로 믿습니다. 인간이 인간답게 살아가는 길이 인간을 창조하신 인간을 구원하러 오신 주 예수 그리스
도를 만나야 만이 우리 안에 새 생명이, 새로운 삶이, 그 안에 행복이 있는 것입니다.
  우리는 세상을 어떻게 살아야 합니까? 십자가를 지신 주님을 바라보면서 이제 우리는 주님과 함께
남을 위해서 헌신하는 삶도 살아야 합니다. 예수 잘 믿으면, 우리교회 부흥하고 큰 교회 되면 뭐하지
요? 왕이 될까요? 용이 될까요? 하늘에 올라갈까요? 아닙니다. 예수 잘 믿으면 남을 위해서 봉사하는
거예요. 헌신하는 거예요. 이 십자가는 우리에게 희생과 헌신이 얼마나 귀하다는 것을 가르쳐주는 자
리입니다. 잘 믿으십니까? 축복 받으셨어요? 모두 집에서나 밖에서나 교회에서나 남을 잘 섬기시기
를 바랍니다. 여러분 자녀만 사랑하지 마십시오. 소년 소녀 가장 불쌍하지 않습니까? 부모 없는 자녀
들 불쌍하지 않습니까? 여러분만 생각하지 마십시오. 이 세상에 이렇게 상처 많은 사람들이 수없이
많은데 여러분, 뭐하십니까? 우리 모두 그들을 사랑하며 섬겨야 할 줄로 믿습니다. 신앙생활도 꼭 큰
교회, 큰 교회에 나와서 예배드리는 것도 사치입니다. 성가대 장엄하고 말씀이 여러분을 만족하게 하
는 것 같은데 이것은 교만입니다. 약한 교회, 작은 교회 도와주어야 합니다. 적은 목사님들 개척교회
목사님들 도와드려야 합니다. 선물도 큰 교회 목사에게 선물하지 마세요. 저한테 선물하지 말아요. 나
는 먹을 것 많아요. 그리고 또 어지간한 것 갖다 주어봐야 좋지도 않아요. 이미 나는 타락했어요. 적
은 교회 목사님은 고등어 한 손도 커요. 쌀 한 톨, 밥 한 수저도 그 분들은 귀한 거예요. 큰 교회 목사
대접해 봐요. 돈 많이 들어요. 적은 교회 목사는 냉면 한 그릇도 얼마나 귀한지 알아요? 주변에 개척
교회 있으면 외면하지 말고 도와드려요. 가서 기도해 드리고 위로해 드려요. 그래야 하늘나라에 가서
상이 큰 거예요. 땅에 맞추지 말고 하늘에 맞추고 살아요. 죽음에 맞추고 살아요. 죽으면 다 끝나는데
살아 있는 것은 하나도 없이 다 사라지는데 언제까지 그렇게 살 거예요? 얼마 안 있으면 다 가는 건
데 언제까지 그렇게 살 거예요? 모두 가난하고 불쌍한 사람 멸시하지 마십시오. 적은 교회 목사가 적
은 목사인줄 아십니까? 큰 목사예요. 20명, 30명 데리고 50명 데리고 20년, 30년 목회 하는 것 그것
큰 일군들이에요. 천국에 큰 자들이에요. 우리 모두 사랑해야 할 줄로 믿습니다. 오늘 너무 모두 세상
사람이나 한국교회나 너무 내 만족, 이기주의 나 하나만 생각하는 거예요. 그래서 얼마나 큰 위기가
오는지 지금 1년에 아이들이 우리 인구가 이대로 유지되려면 85만 명이 태어나야 된대요. 해마다 85
만 명이 태어나야 이 인원이 유지가 된대요. 그런데 49만 명밖에 안 태어난대요. 시골에 한 면에 애 울
음소리가 하나도 안 들리고 어떤 마을에는 7년 만에 첫 울음소리가 들렸대요. 이래가지고 되겠어요?
앞으로 초, 중, 고등학교가 1/3이 다 없어져요. 얼마 안 있으면 2/3가 다 없어져요. 우리나라 노인들
만 남게 되는 거예요. 일할 사람이 없어져요. 아이들이 없으니까요. 둘이 한 명을 낳아도 반으로 줄어
드는데 또 한 명도 안 낳는 사람이 너무 많으니 어떻게 될 거예요? 도대체 뭐하세요? 애 안 낳고 뭐 하
냐 말이에요? 저는 앞으로 우리 교회도 그렇게 생각해요. 아이들 세 명 안 낳으면 권사 시키지도 않아
요. 아예 금년부터 결혼하는 사람은 권사가 되려면 아이 셋, 장로님들은 아이 다섯 안 낳으면 장로 안
시켜요. 이제는 아예 정해 놓으려고 해요. 안수집사? 애들 셋 안 낳으면 안수집사 안 돼요. 하나님이
주신, 성경에 첫째가 뭐예요? 생육하고 번성하라는 건데 어디에 초점을 맞추는 거예요? 하나님을 기
쁘시게 하고 십자가 짊어지고 가면 자녀들도 다 사랑스러워지는 거예요. 귀한 거예요. 자녀 없이 둘
이 먹고 가만히 깊은 밤에 둘 이만 있어 봐요. 귀신 나와요. 집안에 애가 북적북적 그래야죠 노인들만
둘이 있어 봐요. 곧 데려갈 귀신들이 찾아온다고요. 되겠어요? 안 되는 거예요. 이기적인 것 버려야
합니다. 희생해야 합니다. 그러면 축복이 옵니다. 열매가 옵니다. 우리 인류를 위해 다 주신 주님 앞
에 온 인류가 다 모여서 경배하지 않습니까? 우리 모두 남은 생애를 하나님의 나라 위하여, 주님 위하
여, 이웃 위하여 우리 모두 서로 사랑하며 나누어주며 욕심 부리지 말고 살아가는 거예요. 그러면 안
되느냐? 잘된다는 거예요. 예수님을 보라는 거예요. 하나님이 하늘 문을 여시고 축복해 주실 줄로 믿
습니다.[#!_END_!#]
  한 가지만 이야기를 드리고 마치겠습니다. 옛날 초나라에 장왕 이라고 하는 아주 어진 임금님이 있
었습니다. 이 임금님은 얼마나 어진지요. 하루는 신하들과 저녁에 잔치를 베풀어서 식사를 하는데 아
불이 꺼졌어요. 바람 때문에. 그런데 왕비가, 중전이 얼마나 예쁜지 사모하던 한 신하가 불이 꺼진 틈
에 와 가지고 그 얼굴에 입을 맞추고 탁 바디터치를 하고 가는 거예요. 그런데 이 왕비는 아주 덕이 없
었어요. 그래 가지고 그 신하의 갓 끈을 딱 잡아 당겼어요. 어디 이런 놈이 있냐 해서 갓 끈을 딱 잡았
어요. 폐하, 불 꺼진 사이에 어떤 놈이 내 볼에다 입을 맞추었습니다. 이런 놈이 어디 있습니까? 갓 끈
을 내가 잡았습니다. 그러니까 이 장왕이 아 그러냐고, 이 좋은 자리가 큰일이 나겠거든요. 여봐라 이
안에 있는 신하들은 모두 갓 끈을 잡아 당겨서 앞에다 갖다 놓아라. 그래서 다 갖다 놓았어요. 그러니
까 갓 끈이 다 없어졌어요. 범인이 누구인지 몰라요. 그래서 잔치를 잘 마쳤어요. 2년 후에 진나라와
초나라와 싸움이 일어났어요. 이것은 실제로 일어났던 일입니다. 큰 전쟁이 일어났는데 이 전쟁에 초
나라가 질 수밖에 없었는데 한 장군이 전체 참모총장이 진두지휘를 해서 진 나라와 싸워 승리를 해서
돌아온 거예요. 큰 잔치를 베풀고 물었어요. 어떻게 해서 이 용맹을 가지고 진 나라와 싸워 이길 수 있
었냐? 이 참모총장이 이렇게 말했어요. 2년 전에 잔치를 베풀 때 갓 끈을 뜯은 것을 기억하십니까? 제
가 그 때 중전인 국모 님을 너무너무 흠모해서 내가 잠깐만 이렇게 얼굴을 댄 것입니다. 그 때 그대로
두었더라면 저는 죽었을 텐데 저를 임금님이 살려 주셨어요. 나는 이미 2년 전에 죽을 몸인데 그래서
생명을 바쳐서 전쟁에 참여하여 승리하게 된 것입니다. 저를 죽여주십시오. 기독교는 바로 이거예요.
주님이 아니면 나는 벌써 죽었어야 하는데. 아무것도 아닌데. 예수님이 아니면 저는 30년 전에 폐병
걸려 가지고 죽었어야 하는데. 피 흘리고 내가 죽었어야 하는데 주님의 은혜로 나를 살려주신 거예
요. 그래서 항상 속상해도 잘 참는 거예요. 힘들어도 잘 참는 거예요. 어려워도 왜? 그때 저는 죽었어
야 됐는데 모두 감사, 그 때 제가 죽었어야 하는데 주님 은혜를 생각하면 너무 감사한 거예요. 우리가
어떻게 이 세상을 살아야 하지요? 주님이 아니면 나는 벌써 죄인이 되어서 벌써 나는 나쁜 놈이 되고
망했어야 하는데 주님의 은혜로 내가 이렇게 살았습니다. 나를 구원해 주신 십자가 지신 주님을 사랑
하며 남은 여생 십자가 증거하고 이웃을 위하여 헌신하다가 천국 가서 주님과 함께 영원히 살겠습니
다. 아멘
  하나님 아버지 은혜를 감사합니다. 고난주간입니다. 우리 모두 주님과 함께 고난주간에 골고다 걸어
가신 주님, 십자가 지시고 여자여 나를 보라 하신 것처럼 우리 모두 주님 만나게 하여 주옵소서. 주의
음성 들어서 이 완악하고 거짓되고 불의하고 강팍하고 잘못된 우리의 삶이 돌아서게 하여 주옵소서
예수 그리스도의 이름으로 기도하옵나이다. 아멘

* itislord님에 의해서 게시물 복사되었습니다 (2005-04-24 14:07)


10/40창 선교지도입니다.
저는 북한의 자강도 희천시 청상동과 온듀라스를 위해 기도하고 있습니다.
당신은 어디를 놓고 기도하시나요?


* itislord님에 의해서 게시물 복사되었습니다 (2005-04-24 14:17)
//코딩하고나서 500 오류가 날 경우 코딩을 바꾸기 전에 먼저 해당 jsp와 연관된 java를 재 생성시키고나서 다시 한번 해보고
//그리고 나서도 오류가 나면 그때 코딩을 수정해야한다.

//string형을 int형으로
<%=st.getWon(Integer.parseInt(rs[i][11]))%>

//int형을 string형으로
pRowPage1 =  Integer.toString( ROW_PER_PAGE ) ;
tyear = Integer.toString(Integer.parseInt(ryear)-1);

//checkNull 사용하기
String syear =  st.checkNull(request.getParameter("syear"));

//항목별 합계
                        int totalamt = 0;
                        for (int i=0;i<rs.length;i++)
                        {
                                int amount = Integer.parseInt(rs[i][11]);
                                totalamt +=amount;
                        }

//날짜 포맷변경
        Date mydate = new Date();
        SimpleDateFormat m_today = new SimpleDateFormat("yyyy/MM/dd");
        String today = m_today.format(mydate);

//select문에 검색된 값 적용
                                  <SELECT NAME="jh_name" onChange="javascript:openPage(this.value);" class="text">
                                        <option value="" selected>특별장학금 선택 </option>
                                        <%
                                                        for(int i=0; i<num ; i++)
                                                        {
                                                                if (jhData[i].getJh_name().startsWith("<font "))
                                                                        continue;
                                        %>
                                        <option value="<%=jhData[i].getJh_name()%>"><%=jhData[i].getJh_name()%></option>
                                        <%         }          %>
                                </SELECT>

//Substring 사용하기
        regdate = yjData.getRdate();
        String ryear = regdate.substring(0,4);
        String rmonth = regdate.substring(5,7);
        String rday = regdate.substring(8,10);
        String ryear2 = ryear+"0301";
        String rtoday = ryear+rmonth+rday;

//Substring
<%=rs[i][6].substring(0,4)%>.<%=rs[i][6].substring(4,6)%>월~<%=rs[i][7].substring(0,4)%>.<%=rs[i][7].substring(4,6)%>월

//자바스크립트 삽입하기
<script language="javascript" src="../js/adm.js"></script>

//자바스크립트 변수값 확인
<script language="javascript">alert(<%=pageStr%>)</script>

//jsp 변수값 확인
out.print("Page: "+pageStr+"<br>");

//jsp에서 bean 배열값을 사용하는 for문 사용하기
        FormData[] FList = logic.getFList(sUserCode,fOrder,fOrderBy);
        int num = logic.getNdisPlayNum();
        
        int row = 0;
        for(int i=0; i<num ; i++) {
                row++;

//배열 값 jsp에서 사용하기
        FormData[] FList = logic.getFList(sUserCode,fOrder,fOrderBy); 일 경우
        
          FList[i].getUColNm() 등과 같이 사용

//jsp에서 java bean을 호출하여 사용할 때 sql insert 또는 update 문을 사용할 때는 pk값 처리에 주의해야 한다.

//[자바스크립트] 체크박스를 한꺼번에 선택/해제 하기
아래의 자바스크립트 코드는 게시판이나 이메일 에서 많이 보아왔을겁니다...
체크박스를 한꺼번에 선택하거나 해제하는 스크립트 소스입니다.

<script>
function selectAll()
{

for(i = 0 ; i < document.memo_frm.elements.length ; i++)
{
var ele = document.memo_frm.elements[i];
for(j = 0 ; j < document.memo_frm.elements.length ; j++)
{
if(ele.name == "del["+j+"]")
ele.checked = !ele.checked;
}
}
}
</script>

<form name=memo_frm>
<table align='center' border="0" cellspacing="0" cellpadding="3">
<tr>
<td>
<a href='javascript:selectAll()'>전체선택</a></td>
</tr>
<tr><td><input type='checkbox' name='del[0]' value='on'></td></tr>
<tr><td><input type='checkbox' name='del[1]' value='on'></td></tr>
<tr><td><input type='checkbox' name='del[2]' value='on'></td></tr>
<tr><td><input type='checkbox' name='del[3]' value='on'></td></tr>
<tr><td><input type='checkbox' name='del[4]' value='on'></td></tr>
</table>
</form>

//jsp 안에서 사용되는 자바 스크립트 안에 jsp 함수를 사용할 경우
  자바스크립트 시작과 끝에 일반적으로 삽입하는 " <!--      //-->" 캐릭터를 삭제해야 한다.

//자바 컴파일시     javac -classpath ../../../ TableDev.java

//자바 스크립트 즐겨찾기 :  http://happyscript.net/happyboard/_htmdb/src_form/index-src_form.htm
1. 우선, httpd.conf에서 원하는 디렉토리를 정의하십시오.

           <Directory /usr/local/apache/htdocs/test>
             AllowOverride All  혹은 AllowOverride Limit
             혹은 AllowOverride AuthConfig
            </Directory>

2. ........./test 디렉토리에 .htaccess 파일에 아래 내용을 넣습니다.
   -------------------------------------------------------
   AuthName \"Auth TEST\"
   AuthType Basic
   AuthUserFile /usr/local/apache/htdocs/test/.htpasswd
   AuthGroupFile /dev/null
   ErrorDocument 401

   require valid-user  aaa

   --------------------------------------------------------

3. 패스워드 파일 생성.  패스워드 파일은 htpasswd라는 프로그램을 써서 만듭니다.  
   소스컴파일로 설치하셨다면, /usr/local/apache/bin/htpasswd 라는 프로그램이 존재합니다.
   이 프로그램은 기본적으로 패스워드파일에서 패스워드부분을 encrypt해 줍니다.

   패스워드를 만들어둘 .................../test 디렉토리에서 /usr/local/apache/bin/htpasswd -c .htpasswd aaa 라고 입력
   ID aaa에 대한 패스워드를 입력. 패스워드만 입력해주면 .htpasswd 파일이 생성


4. 아파치 재시작
* itislord님에 의해서 게시물 복사되었습니다 (2005-04-24 14:18)
자료 입력 및 검색하기
교재명 : MySQL(Advanced Class)
출판사 : 베스트북
저자명 : 허정수  


1.  MySQL Server 기동 및 Mysql 프로그램 실행하기

# /usr/local/mysql/share/mysql/mysql.server  start  [Enter]  : mysql server 기동
또는
#/usr/local/mysql/bin/safe_mysqld  nbsp; [Enter]
mysql server를 기동하는 방법

# ps  -ef  | grep mysqld  [Enter]        : 프로세스 확인
mysqld 데몬 실행 여부를 확인합니다

#/usr/local/mysql/bin/mysql  [Enter]     : mysql 프로그램 실행

Welcome to the MySQL monitor.   Commands  end  with  ;  or  \g.
Your  MySQL  connection  id  is  2  to  server  version: 3.23.49

Type 'help;'  or '\h'  for  help.  Type  '\c' to clear  the  buffer.

mysql>_


2. MySQL 버전 및 기본 데이터베이스 보기

mysql>select  version();            ☜  MySQL 명령문(쿼리문)끝에는 세미콜론.
mysql>show databases;


3. 데이터베이스(Database)  만들기

형식)

CREATE  DATABASE  데이터베이스명 ;

실습)
student 라는 데이터베이스를 만들어 보자.

mysql> CREATE  DATABASE  student;
mysql> SHOW DATABASES ;


4. 테이블(Table) 만들기

형식)
CREATE  TABLE  데이블명 ;

실습)
grade라는 테이블을 만들어 보자.

mysql> USE  student;
mysql> CREATE TABLE grade (
    →student_no  int,
    →student_name  varchar(15),
    →korean   int,
    →math     int,
    →english  int                   ☜  마지막 필드에서는 ","를 입력하지 않음
    →);
Query  Ok,  0 rows offected(0.07 sec)

- 테이블 보기

mysql> SHOW TABLES ;

- 테이블의 구조 보기

mysql> EXPLAIN  grade ;
mysql> DESC  grade ;


5. 테이블에 자료 입력하기

형식)

INSERT INTO 테이블명  VALUES(값1, 값2, .....값n) ;

실습)

mysql> INSERT INTO  grade  VALUES(200101, '강봉춘', 90, 85, 87);


6. 테이블에 저장된 자료 검색

형식)

SELECT  필드명1, 필드명2, ...  FROM  테이블명 ;

실습)

- 테이블 전체 자료 검색하기

mysql> SELECT *  FROM   grade ;          ☜  * 는 전체 필드를 대상으로 검색하겠다는 의미

- 특정한 필드만 대상으로 검색하기

mysql> select  student_name , korean  from  grade ;

- 필드 이름 바꿔 검색하기

mysql> select  student_name  as   '성명' , korean  as  '국어 점수' from  grade ;

- 연산자 사용하여 검색하기

mysql>select  student_name, korean + math + english  as  '총점' from   grade ;


- 함수 사용하기

mysql> select  avg(korean)  from  grade;

mysql> select  sum(korean)  from  grade;

mysql> select  max(korean)  from  grade;

mysql> select  min(korean)  from  grade;


- 정렬하여 검색하기

mysql> select student_name, korean+math+english  as  '총점' from  grade  order  by  '총점'  desc;

mysql> select  student_name , korean  from  grade  order  by  korean  asc;

※ desc 는 내림차순,  asc는 오름차순으로 정렬됨.

- 조건문 사용하기

mysql> select *  from  grade  where  student_name = '허혜선' ;

mysql> select  student_name, korean, math, english  from  grade  where  korean < 90 ;


7. 테이블의 자료 수정하기

형식)

UPDATE  테이블명  SET  필드명 = 새로운값  WHERE  조건 ;

실습)

mysql> update  grade  set  english = 85  where   student_no = 200102 ;

mysql> update  grade  set  korean = 90 ;      //  ※ 주의 모든 레코드가 변경됨


8. 테이블의 자료 삭제하기

형식)

DELETE  FROM   테이블명  WHERE  조건;

실습)

mysql>  delete  from  grade  where  student_no = 200105 ;

mysql>  delete  from  grade ;        //  ※ 주의 모든 레코드가 삭제됨



* itislord님에 의해서 게시물 복사되었습니다 (2005-04-24 14:05)
게시물 입력날짜 수정하기

ㅡmysql zboard에 들어가서 올라온 글을 보면 reg_date 필드에 날짜가 기록되어 있는데 다음과 같이 하면 됩니다.

-----------------------------------------------------------------------
안녕하세요?
밍키아빠입니다.

사이트를 관리하다보면 회원들의 글쓴 날짜를 수정해야 할일이 생깁니다.
생기지 않으면 더욱 좋지만 말입니다.
(특히 사고등 보드의 내용을 복구할때...)

날짜를 DB에서 그냥 수정해 주면 되는데
"1013640853"이라는 식으로 나와서 정확하게 날짜를 알기가 어렵습니다.

음 이것은 유닉스 시간이라서 그런데요
1970년 1월 1일 0시 0시 0분 0초에서 출발해서
오늘까지 초단위로 누계로 계산을 해온 것입니다.

그래서 오늘이 그때로 부터 1013640853흘렀다는 이야기가 되는 것이지요
그래서 특정 날짜로 수정하려면 기간에 해당하는 초만큼 오늘 날짜에서
빼주면 됩니다.

오늘 날짜는 그냥 보드에 기록하면 나오구요.
예를 들어서 오늘 기록한 것을 어제 기록한 것으로 변경하고 싶다면

1013640853  ->  2002년 02월 14일

여기에다 하루에 해당하는 초를 빼주면 됩니다.
하루는 60초*60(분)*24(시간)=86400초가 되는 것이지요

그래서
1013640853에서 86400을 빼주면 어제 날짜가 되는 것입니다.

------------------------------------------------------------
>mysql -u [username] -p[passwd] [db name]
>select * from zetyx_board_[게시판 이름] where no=[변경할 게시물 번호] ;   게시물이 맞는지 확인
>select reg_date from zetyx_board_[게시판 이름] where no=[변경할 게시물 번호] ;

  reg_date 값에서 원하는 시간만큼 뺀 값을 계산함

>update zetyx_board_[게시판 이름] set reg_date= [변결할 값]  where no=[변경할 게시물 번호] ;



* itislord님에 의해서 게시물 복사되었습니다 (2005-04-24 14:05)

'프로그래밍Tips' 카테고리의 다른 글

mysql 사용하기 - 자료 입력 및 검색하기  (0) 2005.04.08
mySQL 기본사용방법 2  (0) 2005.03.26
mySQL 기본사용방법 1  (0) 2005.03.25
MySQL 관련

root암호변경설정
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
This is done with:
/usr/bin/mysqladmin -u root -p password 'new-password'
/usr/bin/mysqladmin -u root -h ns.dbakorea.pe.kr -p password 'new-password'

쉘에서는 mysql이 되는데 PHP에서 mysql.sock error를 내면서 MySQL이 안되는 경우
mysql.sock은 /tmp 아니면 /var/lib/mysql에 생기게 된다.
나의 경우, /var/lib/mysql에 mysql.sock파일이 있는데 PHP에서는 /tmp에서 찾으려하면서 에러를 발생했다.
/usr/bin/safe_mysqld파일에서 다음과 같이 수정한다.
주석(#)이 달린 것이 원래것이고 그 밑에 있는것이 수정한 것이다.

# MYSQL_UNIX_PORT=${MYSQL_UNIX_PORT:-/var/lib/mysql/mysql.sock}
MYSQL_UNIX_PORT=${MYSQL_UNIX_PORT:-/tmp/mysql.sock}

위와 같이 하니 /usr/bin/mysql이 /var/lib/mysql/mysql.sock에서 소켓파일을 찾으려 했다.
socket file을 지정하는 --socket이라는 옵션으로 다음과 같이 지정하면 된다.

mysql --socket=/tmp/mysql.sock -u dbakorea -p db_test

하지만 mysql실행시마다 이렇게 써줘야한다는 것이 상당히 귀찮다. 옵션이 바로 적용되게 설정하자.
mysql은 설정사항을 다음 3가지 파일에서 검색한다.

/etc/my.cnf            global options(MySQL 전체적으로 사용되는 옵션 정의)
mysql-data-dir/my.cnf  특정 DB에 적용되는 option (/var/lib/mysql/my.cnf)
~/.my.cnf              사용자 각각의 설정('~'문자는 사용자의 홈디렉토리는 의미)

/usr/share/mysql디렉토리에 예제가 있으므로 참고한다.
소켓파일의 지정은 다음줄을 넣어주면 된다.

socket          = /tmp/mysql.sock


== /etc/my.cnf예 ==
# The following options will be passed to all MySQL clients
[client]
#password       = your_password
port            = 3306
socket          = /tmp/mysql.sock

# Here follows entries for some specific programs

# The MySQL server
[mysqld]
port            = 3306
socket          = /tmp/mysql.sock


# root암호설정
% mysqladmin -u root password '변경암호'  root로 로그인하여 해야함
or
% mysqladmin -u root -p기존암호 password '변경암호'  root로 로그인하여 해야함

DB생성
mysql> create database DB명 ( or % mysqladmin -u root -p create DB명 )

DB삭제
mysql> drop database DB명

MySQL 연결
mysql -u 사용자 -p DB명 ( or % mysqladmin -u root -p drop DB명 )

데이터파일 실행(sql*loader기능)
mysql>load data local infile "데이터파일" into table 테이블명 ;
데이터파일에서 컬럼구분은 탭문자, Null값은 /n로 입력

질의 파일 실행
쉘프롬프트상에서
mysql -u 사용자 -p DB명 < 질의파일
or
mysql프롬프트상에서
mysql> source 질의파일

쉘프롬프트상에서 질의 실행
dbakorea@lion board]$ mysql mysql -u root -pxxxx -e \
>            "INSERT INTO db VALUES(
>            'localhost', 'aaa', 'aaa',
>            'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y')"


사용자 생성 & 사용자에게 DB할당
shell> mysql --user=root -p mysql

mysql> INSERT INTO user VALUES('localhost','사용자',PASSWORD('비밀번호'),'Y','Y','Y','Y','Y','Y','Y',
'Y','Y','Y','Y','Y','Y','Y');
mysql> INSERT INTO user VALUES('%','사용자',PASSWORD('비밀번호'),'Y','Y','Y','Y','Y','Y','Y','Y','Y',
'Y','Y','Y','Y','Y');

mysql> INSERT INTO db(Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv)
VALUES ('localhost','DB명','사용자','Y','Y','Y','Y','Y','Y');
mysql> INSERT INTO db(Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv)
VALUES('%','DB명','사용자','Y','Y','Y','Y','Y','Y');

mysql> FLUSH PRIVILEGES; (or shell prompt: mysqladmin -u root -pxxxx reload)


DB, 테이블목록보기
mysql> show databases;
mysql> show tables;

사용 DB선택
mysql> use DB명

테이블구조
mysql> describe 테이블명

인덱스 보기
show index from 테이블명

테이블명 변경
mysql> rename table test to test2;

접속
mysql {-h 접속호스트} -u 사용자 -p 사용DB
-h로 다른 서버에 존재하는 MySQL접속시 다음과 같이 MySQL DB에 설정해줘야 한다.
mysql> INSERT INTO user VALUES('접근을 허용할 호스트ip','사용자',PASSWORD('비밀번호'),'Y','Y','Y',
'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');
mysql> INSERT INTO db(Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv)
VALUES('접근을 허용할 호스트ip','사용DB','사용자','Y','Y','Y','Y','Y','Y');
mysql> FLUSH PRIVILEGES; or 쉴프롬프트상에서 % mysqladmin -u root -p flush-privileges

버전체크
mysql> select version();

검색조건(where)
regular expression을 지원하다니 신기하군..
mysql> select * from work where 열명 regexp "정규표현식";

컬럼의 추가, 삭제(오라클과 동일)
alter table 테이블명 add 컬럼명 데이터타입;
alter table 테이블명 del 컬럼명;


백업 & 복구
mysqldump {-h 호스트} -u 사용자 -p DB명 > 백업파일
mysql {-h 호스트} -u 사용자 -p DB명 < 백업파일

mysqldump -u root -p --opt db_dbakorea > dbakorea.sql
mysqldump -u root -p --opt db_board | mysql ---host=remote-host -C database (상이한 머쉰)
mysql -u dbakorea -p db_dbakorea < dbakorea.sql      


mysqldump -u root -p --opt db_dbakorea | mysql ---host=ns.dbakorea.pe.kr -C db_dbakorea

테이블 검사
isamchk

오라클 sysdate와 동일
insert into test values('12', now());

유닉스 time()함수 리턴값 사용
FROM_UNIXTIME(954788684)
UNIX_TIMESTAMP("2001-04-04 :04:04:04")

MySQL 디폴트 DB&로그파일 위치
/var/lib/mysql
/var/lib디렉토리는 여러 프로세스들이 사용하는 데이터를 저장하는 일종의 파일시스템상의 데이터베이
스라고 볼 수 있다.

replace
해당 레코드 존재하면 update하고, 존재하지 않는다면 insert한다.(insert문법과 동일)
replace into test values('maddog','kang myung gyu')'

explain
explain 질의문: 지정한 질의문이 어떻게 실행될 건지를 보여줌
mysql> explain select u.uid, u.name, a.name from sm_user u, sm_addr a where u.uid=a.uid;    
+-------+------+-----------------+-----------------+---------+-------+------+-------+
| table | type | possible_keys   | key             | key_len | ref   | rows | Extra |
+-------+------+-----------------+-----------------+---------+-------+------+-------+
| u     | ALL  | PRIMARY         | NULL            |    NULL | NULL  |  370 |       |
| a     | ref  | sm_addr_uid_idx | sm_addr_uid_idx |      11 | u.uid |   11 |       |
+-------+------+-----------------+-----------------+---------+-------+------+-------+
2 rows in set (0.01 sec)

temporary table
크기가 큰 테이블에 있는 subset에 대한 질의라면 subset을 temporary table에 저장한 후
질의하는 것이 더 빠를 경우가 있다.
create temporary table (...);
create temporary table (...) type=heap;        디스크가 아닌 메모리에 테이블 생성

==============================================================================
MySQL 특성정리
==============================================================================
primary key지원
index 지원(15개컬럼, 256byte까지)
foreign key, check, references기능 지원하지 않음(형식상 있음)

mysql> CREATE TABLE test (
        id INT NOT NULL,
        last_name CHAR(30) NOT NULL,
        first_name CHAR(30) NOT NULL,
        PRIMARY KEY (id),
        INDEX name (last_name,first_name));
        
MySQL에서의 Stored Script개념 => SQL server language
commit-rollback개념 => lock tables


* itislord님에 의해서 게시물 복사되었습니다 (2005-04-24 14:05)
mySQL 기본사용

    ■ MySQL Server의 실행과 종료
            MySQL Server을 실행 시키거나 종료시키려면 다음의 명령을 root 가 사용하면 된다.
               mysql.server start      --> mysql Server의 시작
               mysql.server stop       --> mysql Server의 종료
       MySQL Server가 실행시 두개의 프로세서가 실행되므로 확인해 보기 바란다.
           < 실행중인 두개의 프로세서 >
              /usr/local/bin/safe_mysqld
              /usr/local/libexec/mysqld

        #######################################
        #                                     #
        #     MySQL 설치후 기본적인 사용법과  #
        #          root의 암호설정            #
        #                                     #
        #######################################


        1. MySQL 사용하기

    1.1 MySQL 서버 시작하기

MySQL이 정상적으로 설치 되었다면 그리고 디폴트 옵션으로 설치
하였다면 /usr/local/bin/ 디렉토리에 관련 실행 파일이 설치 되었
을 것이다. 먼저 MySQL 서버를 실행하는 명령은 다음과 같다.
물론 root 아이디로 실행해야 한다.(다른방법이 있으면 알려주세요)

    mysql.server start

위와 같이 입력하면 서버가 실행된다.  두개의 프로세서가 데몬상태로
실행되는데, safe_mysqld, mysqld 이렇게 두개이다.
이 두개의 프로세서가 실행되고 있다면 이제 MySQL을 사용할수 있다.
MySQL 두번째 강좌에서 보면 위의 두 프로그램에 대한 설명이 나와 있다.
이 상태에서 아래와 같이 MySQL을 사용할수 있는 가상 터미날을 실행시킨다.

    mysql -u root mysql

MySQL이 처음 설치되면  DB admin user 는 root 이다. 몰론 이것은 변경
할수도 있다. 디폴트로 설치한 경우 암호가 처음에는 생성되어 있지 않으
므로 위와 같이 하면 실행이 된다. 위의 명령에 대한 설명은 다음과 같다.

  mysql       -u          root               mysql
실행파일  유저선택     root db 유저     사용할데이타베이스

그외 몇가지 간단한 옵션이 있으나 필요하면 mysql -h 하여 내용을 참고
하기 바란다. 그리고, root 유저에 암호를 설정한 후 부터는 -p 옵션을
하나더 추가하여 실행하기 바란다. 이 옵션은 패스워드를 입력받는 옵션이다.


    1.2 mysql 프로그램의 사용

  mysql을 실행하여 간단한 동작을 하여보자.
mysql은 일반 유저로 실행하여도 되는 프로그램이다.

$ mysql -u root mysql                        ---> DB 사용을 위한 실행
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 3.21.27-gamma-log

Type 'help' for help.

mysql>

위와 같이 연결된다. 여기서 몇가지 간단한 테스트용 명령을 적는다.

mysql> show databases                  --> 데이타베이스 종류보기
    -> \g
+----------+
| Database |
+----------+
| mysql    |
| test     |
+----------+
2 rows in set (0.00 sec)

mysql> show tables from mysql          --> mysql상의 테이블 정보 보기
    -> \g
+-----------------+
| Tables in mysql |
+-----------------+
| db              |
| func            |
| host            |
| user            |
+-----------------+
4 rows in set (0.00 sec)

mysql> show columns from db            --> db table 칼럼정보 보기
    -> \g
+-------------+---------------+------+-----+---------+-------+
| Field       | Type          | Null | Key | Default | Extra |
+-------------+---------------+------+-----+---------+-------+
| Host        | char(60)      |      | PRI |         |       |
| Db          | char(32)      |      | PRI |         |       |
| User        | char(16)      |      | PRI |         |       |
| Select_priv | enum('N','Y') |      |     | N       |       |
| Insert_priv | enum('N','Y') |      |     | N       |       |
| Update_priv | enum('N','Y') |      |     | N       |       |
| Delete_priv | enum('N','Y') |      |     | N       |       |
| Create_priv | enum('N','Y') |      |     | N       |       |
| Drop_priv   | enum('N','Y') |      |     | N       |       |
+-------------+---------------+------+-----+---------+-------+
9 rows in set (0.00 sec)

mysql> show index from db              --> db table의 인덱스정보기
    -> \g
+-------+------------+----------+--------------+-------------+
-----------+-------------+----------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name |
Collation | Cardinality | Sub_part |
+-------+------------+----------+--------------+-------------+
-----------+-------------+----------+
| db    |          0 | Host     |            1 | Host        |
A         |     4 |     NULL |
| db    |          0 | Host     |            2 | Db          |
A         |     4 |     NULL |
| db    |          0 | Host     |            3 | User        |
A         |     4 |     NULL |
| db    |          1 | User     |            1 | User        |
A         |  NULL |     NULL |
+-------+------------+----------+--------------+-------------+
-----------+-------------+----------+
4 rows in set (0.00 sec)

mysql> show status                     --> MySQL의 상태정보 보기
    -> \g
+--------+-----------------+-----------+---------------+---------
+-------------+
| Uptime | Running_threads | Questions | Opened_tables | Reloads
| Open_tables |
+--------+-----------------+-----------+---------------+---------
+-------------+
|   1493 |               1 |        26 |             4 |       1
|           4 |
+--------+-----------------+-----------+---------------+---------
+-------------+
1 row in set (0.00 sec)

mysql> show variables                  --> MySQL 환경변수보기
    -> \g
+--------------------+---------------------------------+
| Variable_name      | Value                           |
+--------------------+---------------------------------+
| back_log           | 5                               |
| basedir            | /usr/local/                     |
| datadir            | .                               |
| join_buffer        | 131072                          |
| key_buffer         | 1048568                         |
| language           | /usr/local/share/mysql/english/ |
| max_allowed_packet | 65536                           |
| max_connections    | 90                              |
| max_join_size      | 4294967295                      |
| max_sort_length    | 1024                            |
| net_buffer_length  | 8192                            |
| port               | 3306                            |
| record_buffer      | 131072                          |
| skip_locking       | 1                               |
| socket             | /tmp/mysql.sock                 |
| sort_buffer        | 2097144                         |
| table_cache        | 64                              |
| thread_stack       | 65536                           |
| tmp_table_size     | 1048576                         |
+--------------------+---------------------------------+
19 rows in set (0.00 sec)

mysql> select * from db                  --> db 테이블의 데이타 가져오기
    -> \g
+-----------+----------+------------+-------------+-------------+
-------------+-------------+-------------+-----------+
| Host      | Db       | User       | Select_priv | Insert_priv |
Update_priv |Delete_priv | Create_priv | Drop_priv |
+-----------+----------+------------+-------------+-------------+
-------------+-------------+-------------+-----------+
| %         | test     |            | Y           | Y           |
Y           |Y           | Y           | Y         |
| %         | test\_%  |            | Y           | Y           |
Y           |Y           | Y           | Y         |
| localhost | binggo   | binggo     | Y           | Y           |
Y           |Y           | Y           | Y         |
+-----------+----------+------------+-------------+-------------+
-------------+-------------+-------------+-----------+
3 rows in set (0.00 sec)

mysql>


위의 명령은 기본적인 명령으로서 실제 mysql 을 사용할때
자주 사용될 명령이라고 생각된다. 기타 sql문은 강좌 3에서
정리하였으므로 생략하기로 한다.


        2. MySQL DB admin user 암호걸기

  MySQL 을 설치후 가장 먼저 해야 할 일은 MySQL의 admin 인
root (DB user 임)의 암호를 설정하는 일이다. 이것은 서버가
인터넷상에 접속되어 있을경우 보안을 위하여 가장 먼저해야
하는 일이라고 생각된다. 암호를 설정하는 방법은 다음과 같다.
먼저 admin 유저인 root 아이디의 암호를 설정하기로 한다.

mysql> update user
    -> set password = password('testpass')
    -> where user = 'root'
    -> \g
Query OK, 2 row affected (0.00 sec)

mysql>

위를 실행하면 일반적으로 user 테이블상에 root 아이디가 두개가 root
아이디가 등록 되어 있으므로 2 row 의 비밀번호가 변경이 된다.
여기시 확인을 위하여 아래의 명령을 실행해 본다.

mysql> select * from user
    -> \g
  . . . .
  . . . .

테이블상에 저장된 내용이 출력될 것이다.

자 이제부터는 admin 유저인 root로 mysql에 접속할 경우 꼭 password를
입력해야 한다. 즉 아래와 같이 실행하여야 한다.

$ mysql -u root -p mysql
Enter password:

암호를 물을때 암호를 입력하면 mysql을 사용할수 있다.


        3. 새로운 데이타 베이스 생성과 사용자 연결

    3.1 데이타 베이스의 생성

데이타베이스 생성의 방법은 두가지가 있다. mysqladmin 프로그램을
이용하여 root 아이디로 shell 상에서 생성하는 방법과 또하나 mysql
프로그램 상에서 생성하는 방법이다.

먼저 mysqladmin 프로그램을 이용하는 방법이다.

mysqladmin create soonhg     --> 이경우 soonhg 라는 데이타베이스 생성

admin 인 root 에 암호를 설정한 경우 다음과 같이 실행한다.

mysqladmin -u root -p create soonhg

이 경우 디폴트로 설치한 경우 /usr/local/var/soonhg 라는 디렉토리가 생성
된다. 이 디렉토리가 데이타 베이스 공간으로 이용될 곳이다. 즉 soonhg 라는
데이타 베이스 공간에 테이블을 생성할 경우 soonhg 라는 디렉토리로 관련된
파일이 생성되며 데이타가 저장된다.

*******************************************************************
중요한 tip......
*******************************************************************
MySQL과 주고 밍는 각종 내용은 /usr/local/var 상의 full도메인명.log
파일상에 모두 저장된다. 만일 동작 상태를 알고 싶다면 터미날을 하나 더
열어서 tail -f full도메인명.log 하여 MySQL과의 주고받는 내용을
모니터링 할 수 있다.
*******************************************************************

두번째 방법으로 mysql을 이용하는 법이다. mysql 실행상태에서 아래와 같이
한다. (admin 인 root 아이디로 mysql 에 접속)

mysql> create database soonhg
    -> \g
Query OK, 1 row affected (0.00 sec)

mysql>

위의 두가지 방법중 어느 방법을 사용하여도 무관하다. 개인적으로는 mysql
상에서 데이타베이스를 생성하는것을 권장한다. 왜냐하면 계속하여 작업을
해야할것들이 있기 때문이다.


    3.2 데이타베이스와 mysql 관리 테이블과의 연결 및 사용자등록 및 특권정의

자 이제 생성된 데이타베이스와 데이타베이스 관리및 엑세스 권한등을 정의
하고 있는 mysql 상의 db, user 테이블에 방금 생성된 soonhg 테이블의 내
용을 정의 하자.

먼저 이 soonhg 데이타베이스는 모든 호스트 상에서 접근이 가능하도록 만들
기로 한다. 그리고 사용자는 id 로 park 라는 DB user 를 생성한다고 하자.
sql 문은 다음과 같다.

mysql> insert into db
    -> (host,db,user,select_priv,insert_priv,update_priv,delete_priv,
    -> create_priv,drop_priv)
    -> values ('%','soonhg','park','Y','Y','Y','Y','Y','Y')
    -> \g
Query OK, 1 row affected (0.00 sec)

mysql>

위의 sql문에서 보면 park 이라는 사용자는 soonhg 데이타베이스에 대하여
select,insert,update,delete,create,drop 권한이 모두 주어졌다. 이것은
하나의 soonhg 데이타 베이스에 대하여 각 sql 명령에 대한 권한을 개별적
으로 줄수 있다는 것을 의미한다.
select * from db 라는 sql 문을 이용하여 정상적으로 insert 되었는지
확인해 보기 바란다.

자 이제 park 라는 db 사용자에 대한 등록을 할 차례이다.
다음과 같은  sql 문을 만들어 실행한다.


mysql> insert into user
    -> (host,user,password,select_priv,insert_priv,
    -> update_priv,delete_priv,create_priv,drop_priv,
    -> reload_priv,shutdown_priv,process_priv,file_priv)
    -> values ('localhost','park',password('park'),'N',
    -> 'N','N','N','N','N','N','N','N','N')
    -> \g
Query OK, 1 row affected (0.00 sec)

mysql>

위와 같이 하여도 되고 간단히 아래와 같이 하여도 무방하다.

mysql> insert into user
    -> (host,user,password)
    -> values ('localhost','park',password('park'))
    -> \g
Query OK, 1 row affected (0.00 sec)

mysql>

host,user,password  이외의 칼럼들은 모두 디폴트로 'N' 으로 설정
되어 있으므로 위와 같이 하면된다. 여기서 db 테이블과 user 테이블은
특권상에서 약간의 차이점이 있다.  db 테이블 상에서 설정되지 않고
user 테이블 상에만 설정되어진 DB 사용자는 user 테이블 상에서 설정
된 권한을 존재하는 모든 데이타베이스에 대하여 인정받는다.
이러한 이유로 일반 사용자인 경우는 user 테이블 상에는 모든 권한을
'N' 로 설정하여야 하고 각 DB user 가 사용할 데이타베이스에 대한
권한을 DB 테이블에 다시 정해주는 것이다.
즉, 데이타베이스가 여러개 존재한다고 가정하자.  aaa, bbb, ccc 라는
세개의 데이타베이스가 존재할때, park 이라는 DB 사용자는 aaa 라는
데이타베이스만 이용하게 하려고 설정하려고 한다고 하자.

이경우는  user 테이블에는 모든 권한을 'N' 상태로 설정하고 db 테이블
에는 aaa 라는 테이블에 대하여 모든 권한을 'Y' 라고 설정하면 이 park
라는 db 사용자는 aaa 라는 데이타베이스에 대하여 사용권한이 주어질
것이다. 잘 이해가 가지 않는다면 몇번 더 자세히 읽어보고 test 해본다면
쉽게 이해할 수 있을것이다.

*******************************************************************
중요한 tip......
*******************************************************************
user 테이블에 사용자를 insert, update  한 경우 MySQL을 꼭 재기동
시켜 주어야만 한다. 명령은 다음과 같다.
     myaqladmin -u root -p reload
이 명령은 user 테이블에서 사용자 정보를 다시 읽어서 MySQL 을 다시
실행시켜준다.
*******************************************************************


        4. 테이블의 생성

테이블의 생성은 일반적인 sql 문장이므로 간단히 테이블 하나 생성하는
예제를 적는것으로 대신하겠다.
위에서 생성한 사용자와 사용자를 위한 테이블을 이용하여 작업을 하여보자

먼저 mysql을 실행한다. 실행은 그냥 일반 계정 사용자로 한다.

$ mysql -u park -p soonhg
Enter password: ****          <-- 여기서 password 인 park을 입력한다.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 17 to server version: 3.21.27-gamma-log

Type 'help' for help.

mysql>


자 MySQL에 접속되었다. 이제 table을 생성하여 보자. 아래는 individual
테이블 생성을 위한 SQL 문장이다.

create table individual(
empno  char(16)   primary key,
name   char(20)   not null,
sex    char(2),
addr   char(80),
tel    char(15)
)

위의 테이블은 개인정보 테이블로 간단히 만든것이다. empno 가 키가 되어
저장된다. 물론 index 테이블이 하나 생성되며 empno 가 인덱싱 되어진 테
이블이 생성될것이다. not null 은 말그대로 name 칼럼은 null 값은 받지
않겠다는 것이고.....

자 그럼 insert 문장을 하나 작성해 보자

insert into individual
values ('1','박순행','1','서울시 중랑구 상봉동 LG apt.','02-777-7777')

위의 sql문을 실행하면 한 row의 데이타가 insert 된다. 그럼 이제
select 문을 이용하여 읽어보자.

mysql> select *
    -> from individual
    -> \g
+-------+--------+------+------------------------------+-------------+
| empno | name   | sex  | addr                         | tel         |
+-------+--------+------+------------------------------+-------------+
| 1     | 박순행 | 1    | 서울시 중랑구 상봉동 LG apt. | 02-777-7777 |
+-------+--------+------+------------------------------+-------------+
1 row in set (0.00 sec)


위와 같이 출력 될 것이다. 여러가지 sql문장을 테스트 해보면 될것이다.

* itislord님에 의해서 게시물 복사되었습니다 (2005-04-24 14:05)

'프로그래밍Tips' 카테고리의 다른 글

mySQL 기본사용방법 2  (0) 2005.03.26
UTP RJ 45 랜선 케이블링 방법  (0) 2005.03.03
오라클 원격 DB 접속 설정하기  (0) 2005.02.22

+ Recent posts