[모니터링] 성능모니터링

Posted 2019. 1. 7. 08:57


참조블로그 : http://experiences.tistory.com/24



show global status;

show global status like 'aborted_connects'



MySQL process running 

 측정

  내용 

 알림

mysqld process count 

  올바른 바이러니 데몬 프로세스 실행 

 mysqld 의 count 정상여부 ( /user/sbin/mysqld !=1)



SystemMetrics on a SQL Server 

병목이 발샐하면 아래의 내용을 살펴보시면 됩니다. 

 측정

 내용 

 알림

 Load

 An all-in-one performance metric. 

http://blog.scoutapp.com/articles/2009/07/31/understanding-load-averages


uptime이나 top 명령어 통해 3 실수 값으로 표현 
load average: 0.00,0.01,0.05  1분,5분,15분 동안 실행 대기 중인 프로세스의 평균 갯수

싱글코어 일때 1.00은 cpu가 100%점유 된 상태 

 부하발생할때 > (코어수 *  1 )


 

 CPU usage

 임계치에 넘지 않는  cpu 사용량은 나쁜것은 아니다. 

 

 Memory usage

 Mysql  사용가능한 메모리를 활당 , 다른프로세스 위해 충분히 남겨 둬야한다.  

 

 Swap usage

 스왑은 응급 상황일때 사용 되며 사용해서는 안된다.

 사용된 스왑 > 128MB

 NetWork bandwidth

 백업하지않는한 방대한 양의 데이터 전송 할때 병목 현상이 없어야 한다. 

 

 Disk usage

 새로 생성된 파일,임시파일 ,스냅샷 또는 백업을위한 여유공간이 있는 확인 

 데이터베이스,로그 그리고 temp  > 85% 


Disk Monitoring
가장 보편적인 병목 현상 중 하나 입니다. 

디스크 성능 세부적인 측정 항목 들을 주의 깊게 확인 하셔야 합니다. 

성능 확인 tool iostat , pt-diskstats 이용하세요 

 측정

 내용

 알림

 Read/Write requests

  IOPS (input/Output operations per second) 

  

 IO Queue length

 디스크 액세스를 기다리수 ,

데이터가 캐시에  있으면 디스크 작업이 발생하지  않습니다. 

데이터가  캐시에 없으면  (즉 미스)  디스크 작업 발생

 

 Average IO Wait

 대기열 작업 ( 디스크 액세스를 대기 해야 할 평균시간) 

 

 Average Read/Write time

 디스크 액세스가 완료 되는데 걸리는 시간 

 

 Read /Write bandwidth

 데이터가 디스크로  전송 양  

 


MySQL  가용성 및 connection 모니터링 

측정 

 내용

 알림

 uptime

 서버가 시작된 이후의 시간 (초), respawns를 탐지 하기위해 사용 

 uptime < 180

 Threads_connected 

 현재 연결된 클라이언트 수 , 없거나 넘 높으면 문제 있음 

 

 Max_used_connections

 서버가 시작된후 최대 연결수 

 (max_used_connection /Max_connections)
connection 슬롯들 다 쓸수 있는지 나타남

 사용하고 있는 Connection > 85% 

 Aborted_connects 

 연결실패 수 , 자주 발생시 연결정보 오류 또는 공격일수도 있습니다. 

분당 연결실패수가 > 3 
(공개 되지 않은 서버에 대해서) 


Mysql Errors 

측정 

 내용

 알림

 Errors 

 mysql.log 파일에 오류가 있습니까?

 

 Log Files Size

 모든 로그파일이 순환(Rotated) 되고 있습니까?

 

 Deleted log files

 로그파일이 삭제 되었지만 파일설명자(File descriptor) 열려 있습니까?

 

 Backup space

 백업할 Disk공간이 충분합니까 ?

 






Monitoring Mysql Queries 

측정 

 내용

 알림

 Questions(/s)

 클라이언트가 보낸 쿼리 수 

 

 Queries

실행된 쿼리문 수 (저장프로시저 포함) 

 

 Read/Writes

Reads: select  + cache hits 

Writes:  insert  + updates+ deletes 

 


 

서버성능에 영향을 미치는 쿼리들 추적   

측정 

 내용

 알림

 slow_queries

 long_query_time초 보다 오래 걸린 쿼리 
느리쿼리는 과도한 디스크 , 메모리 및  cpu를 사용 합니다. 
Slow_query_log 를 확인 필요 

 

 select_full_join

 퀴리에 사용되는 전체 조인수 (높을경우 인덱스 및 스키마 디자인 고려) 

 

 Created_tmp_disk_tables

 디스크에 저장되는 임시 테이블 수 

 

 (full table scans)

Handler_read%

 데이블의 인덱스 첫번째 row읽는 수 (full scan 수 ) 
순차 읽기는 인덱스를 잘 활용 하지 못한다. 

 


Monitoring MySQL caches,buffers, and locks

캐시 버퍼의 최적화 및 트랙잭션 잠김 감시 


측정 

 내용

 알림

 innodb_row_lock_waits

innoDB가 행을 잠그기전에 기다린 수

 

 innodb_buffer_pool_wait_free

innoDB가 메모리 페이지 플러시 될때가 기다린수 
횟수가 높으면 innodb_buffer_pool_size 를 증가 해야 한다. 

 

 open_tables

 현재 열려있는 테이블수 

open_tables 낮고 table_cache 높으면 캐시 크기를 줄일수 있습니다. 

반대 일경우 

table_cache 높이고 mysql 사용자가 사용가능한 파일수도 증가 해야 한다. 

 

 long running transactions

너무 많은 트랙잭션들 때문에 다른 트랜잭셕들이 대기 하는지 추적 해야 합니다. 
innoDB에 문제 때문에 발생할수 있습니다. 

 

 Deadlocks

 교착 상태 , 어플리케이션에서 해결 되어야 합니다. 

 



[사이트] 유용한 사이트 모음

Posted 2016. 12. 29. 13:06

 

* 브라우저 별 사용 순위

https://www.netmarketshare.com/

 

 

'-- STuDy -- > 컴퓨터' 카테고리의 다른 글

[도메인] 퓨니코드  (0) 2015.02.04
[시그윈] 설치  (0) 2014.04.21
[MS워드] 목차만들기  (0) 2014.04.14
[레지스트리] 원격포트 변경  (0) 2013.07.26
[노트북]펑션키 고정시  (0) 2013.04.26

리눅스교육(2016.1108-1111)_v0.3.xlsx

리눅스교육(2016.1108-1111)_v0.4.xlsx

 

 

멀티캠퍼스 : http://ksp.credu.com/

과목명 : 실전! 초보자를 위한 Linux

강사 : 강성진 / 초급과정

교재 : Fedora Core로 배우는 리눅스 서버관리입문 / 이광,김봉근,김용승 저

 

OS : CentOS 5.4

 

 

2016.11.08 - 1일차

 

Fedora   -->  RedHat Enterprise Linux  -->  CentOS

무료             유료                                  무료

신기술적용                                            신기술적용속도 느림

버그 많음

 

  1. 리눅스 서버 부팅 순서

가) 전원온 -> POST(PowerOnSelfTest) -> MBR 안의 GRUB 실행 -> init 확인 -> 필요한서비스 실행

  1) MBR : HDD의 첫 512 바이트를 명칭함

  2) GRUB : 부트로더, 커널로더

    - LILO : 예전의 부트로더

    - GRUB : 최근 부트로더, LILO 부더 성능 우수

  3) init : 런레벨 확인

    - 경로 : /etc/inittab

    - 런레벨0 : 서버종료

    - 런레벨6 : 재시작

    - 런레벨1 : 싱글유저모드, 네트워크 사용안됨

    - 런레벨2,3 : 멀티유저모드

    - 런레벨4 : 리눅스에서 사용안함

    - 런레벨5 : 콘솔이 xwindows 모드

# who -r : 런레벨 확인

 

  2. 시간

가) 시스템 시간 확인 : # date

  1) 동기화서버시간확인 : # rdate -p time.bora.net

  2) 시간동기화 : rdate -s time.bora.net

  3) 시간설정 : # date mmddHHMM[yy]

나) 하드웨어 시간 확인 : # clock

다) 시간 적용

  1) 시스템시간을 고침(하드웨어시간을시스템시간에등록) : # clock -s

  2) 하드웨어시간을 고침 : # clock -w

 

  3. 서버 종료, 재부팅

가) 서버 종료

  1) # halt

  2) # shutdown -h +10[0, now, hh:mm]

  3) init 0

나) 서버 재부팅

  1) # reboot

  2) # shutdown -r +10[0, now, hh:mm]

  3) init 6

#shutdown -c : 원격에서 서버 종료 취소

 

  4. 쉘

가) 쉘의 종류

  1) csh(씨쉘)

  2) ksh(콘쉘) : 유닉스에서 많이 사용

  3) bash(배쉬쉘) : 리눅스에서 많이 사용, 명령어를 찾아서 실행 해줌

 

  5. 기타

가) 가상 콘솔, 터미널

  1) 가상콘솔모드

    - Ctrl + Alt + F1 ~ F6

    - xwindow : Ctrl + Alt + F7

    - CentOS 6.8에서 xwindow는 F1 임

    - /dev/ttyn 로 표시됨

  2) 터미널 모드

    - 원격 접속 모드

    - /dev/pts/n 으로 표시 됨

# tty : 모드 확인

  /dev/pts/0

  /dev/pts/1

  /dev/tty2

 

 

 

 

 

 

 

2016.11.09 - 2일차

 

  1. 명령서 설명서

가) man clock

  1) 검색 : /string + n(아래로검색), N(위로검색)

  2) 페이지 분류

    - Section 1 : 일반사용자명령

    - Section 8 : 관리자 명령

    - Section 2 : 시스템콜 (Kernel 함수)

    - Section 3 : 라이브러리 콜

    - Section 5 : File Formant

 

  2. 쉘변경

가) 명령어

# chsh + 암호

 

3. vi명령어

 

 

2016.11.10 - 3일차

 

1. 사용자 전환

2. 사용자 출력

3. 사용자 삭제

4. 그룹 정보 수정

5. 그룹 삭제

6. 계정 비밀번호 관리

 

 

 

 

2016.11.11 - 4일차

 

 

 

 

  * 명령어들

# who : 로그인 사용자 확인, 서버 차단, 재부팅시 확인 필요

# passwd : 관리자 패스워드 설정

# passwd user : user라는 계정의 패스워드 설정

# ps : 실행 중인 프로세스 확인

# whereis sh : sh명령어의 위치 확인

# whereis clock : clock명령의 위치 확인

# tty : 터미널 및 콘솔 확인

 

 

'-- STuDy -- > 리눅스' 카테고리의 다른 글

[리눅스] tcpdump  (0) 2016.02.16

[리눅스] tcpdump

Posted 2016. 2. 16. 13:46

참조

http://kensei.tistory.com/89

http://wnstjqdl.tistory.com/42

 

 

 

[]# tcpdump -i eth0 -w 20160216001.log

[]# tcpdump 'src 10.3.22.112 or dst 10.3.22.112' -c 1000

 

떨군 덤프파일이 깨지기도 함

putty에 모든 정보를 저장하게 설정하여 해당 로그만 추출하기도 함

 

 

 

 

 

 

TCPDUMP

- 기본적으로 서로 옵션이나 규칙을 조합하여 사용가능하다

-n : 주소를 십진수로 표시
-i : 어느 인터페이스를 경유하는 패킷을 캡쳐할지 결정 (eth0, eth1, eth2 ...)

-t : 캡쳐 시간을 출력하지 않음
-c : 캡쳐할 패킷 수 지정 (지정한 수 만큼 캡쳐하고 종료)
-a : 도메인 이름형식으로 주소 출력
-f : 로컬호스트는 도메인 이름, 원격호스트는 숫자로 표시
-e : 링크레벨 헤더를 출력
-N : 호스트 이름을 출력할때 도메인 출력하지 않음
-p :인터페이스를 promiscuous 모드로 하지 않음 ( 이모드로 하면 아마 브로드케스트 패킷이나 자기와 관련없는 패킷들은 생깔것같음 
-q(v): 프로토콜정보를 간단히 (자세히) 출력
-w(r) : 캡쳐한 패킷을 파일에 저장 (로드)
-s : snap length 를 변경 (기본 68바이트) : 무슨 소린지? ㅎㅎ
-S : TCP순서번호를 상대적인 번호가 아닌 절대적 값으로 출력
- v : 더 많은 정보들을 출력
-vv : -v 보다 더 많은 정보들을 출력
-x : 패킷을 헥사코드로 출력


조건식

and - or
host - net - port
src - dst
proto

tcpdump 'proto /ip' : ip데이터그램을 캡쳐
tcpdump 'arp' : ARP 패킷을 캡쳐
tcpdump 'tcp' : TCP 패킷을 캡쳐
tcpdump 'host yahoo.com' : 특정호스트가 송수신하는 패킷 캡쳐 (IP주소도 넣을수 있음)
tcpdump 'src host yahoo.com' : 특정송신자의 패킷만 캡쳐
tcpdump 'dst host yahoo.com' : 특정수신자의 패킷만 캡쳐
tcpdump 'port 23' : 송신지의 포트번호가 23인 패킷만 패킷만 캡쳐
tcpdump 'dst host A or dst host B' : 목적지가 A 혹은 B의 패킷 캡쳐
tcpdump 'not dst host A and src host B' : 목적지가 A가 아닌 발신지가 B인 패킷만 캡쳐

S : tcp 헤더의 SYN비트 (순서번호)
win : tcp 헤더의 Window Size
ack : tcp 헤더의 승인필드와 번호
DF : Don't Fragmentation (단편화 될수 없는 패킷??)

플래그
- S : SYN (Synchronize sequence numbers) 연결요청
- ACK : 패킷을 잘 받았다는 응답표시
- F : FIN (보낸쪽에서 연결을 종료) 정상적인 연결종료
- R : RST (비정상적으로 즉시 연결종료)
- P : PSH (데이터를 즉시 어플리케이션으로 전달)
- Usr : (긴급한 데이터에 우선순위를 높게 줌)
- . : (SYN, FIN, RESET, PUSH 가 아닌경우로 flag가 설정되지 않은 경우) : Placeholder

특정플래그만 캡쳐하기

SYN플래그의 패킷만 잡고 싶다?

C E U A P R S F
7 6 5 4 3 2 1 0
0 0 0 0 0 0 1 0

0*2 + 0*2 + 0*2 + 0*2 + 0*2 + 0*2 + 1*2 + 0*2 = 2 

TCP[13] == 2 

SYN-ACK 패킷만 잡고 싶다?

C E U A P R S F
7 6 5 4 3 2 1 0
0 0 0 1 0 0 1 0

0*2 + 0*2 + 0*2 + 1*2 + 0*2 + 0*2 + 1*2 + 0*2 = 18

1*2 의 4승 더하기 1*2의 1승 = 18

TCP[13] == 18 으로 나타내는게 아니라 무슨 소린지 모르겠지만

TCP[13] & 2 == 2

'-- STuDy -- > 리눅스' 카테고리의 다른 글

[멀티캠퍼스] 리눅스 초급 교육 1일차  (0) 2016.11.08

[도메인] 퓨니코드

Posted 2015. 2. 4. 17:55


한글도메인이용시 퓨니코드를 이용하여 변환

--위키백과 퓨니코드

http://ko.wikipedia.org/wiki/%ED%93%A8%EB%8B%88%EC%BD%94%EB%93%9C

--퓨니코드 검색

http://domain.blueweb.co.kr/pop_puny.html



'-- STuDy -- > 컴퓨터' 카테고리의 다른 글

[사이트] 유용한 사이트 모음  (0) 2016.12.29
[시그윈] 설치  (0) 2014.04.21
[MS워드] 목차만들기  (0) 2014.04.14
[레지스트리] 원격포트 변경  (0) 2013.07.26
[노트북]펑션키 고정시  (0) 2013.04.26

[연결된서버] 링크드 서버

Posted 2014. 11. 6. 14:55

 

----- 일반 -----

공급자

Microsoft OLE DB Provider for ODBC Drivers

제품이름

MySQL

공급자 문자열

Driver={MySQL ODBC 3.51 Driver};Server=172.16.36.69;Database=abc;User=userid;Password=password;Option=3;

카탈로그 - 위의 Database 이름 적음

abc

 

 

 

----- 보안 -----

다음보안 컨텍스트를 사용하여 연결 선택

원격로그인 계정등록 - 위의 공급자 문자열의 계정 정보 등록


 

연결된 서버에서 확인


select * 

from openquery(별칭, 'select * from 실제디비쿼리')



 

'-- STuDy -- > 데이터 베이스' 카테고리의 다른 글

[MSSQL] 파일 내보내기  (0) 2014.05.22
[DBMS] 뷰테이블 생성,삭제  (0) 2013.11.12
[쿼리] 이중 join  (0) 2013.07.28
[쿼리] select와 where  (0) 2013.07.14
[MS-SQL 2000, 2005] 계정 암호 변경  (0) 2013.07.03

[win xp] 버전별 기능 차이

Posted 2014. 9. 3. 17:25

 

참조블로그

http://moonslab.com/144

http://www.cyworld.com/lightkid11/3863888

 

Windows XP 버전별 기능

  블로그참조

 

Windows XP Home Edition에 포함되지 않은 기능

  원격 데스크톱 서비스

  다중 프로세스 지원

  다중 언어 사용자 인터페이스

  관리도구를 보여주기 위한 시작 메뉴 옵션

  인터넷 정보 서비스(IIS)

 

 

[MSSQL] 파일 내보내기

Posted 2014. 5. 22. 20:43


 

테이블을 파일로 떨구기

 

참조블로그

http://blog.naver.com/PostView.nhn?blogId=shade77&logNo=60214516326

http://www.joshua95.net/355

http://blog.daum.net/sommer2k/41


BCP 설명

https://msdn.microsoft.com/ko-kr/library/ms162802.aspx

(비)XML서식 설명

https://msdn.microsoft.com/ko-kr/library/ms191479.aspx

네이티브형식 및 문자형식 등 가져오기 및 내보내기

https://msdn.microsoft.com/ko-kr/library/ms191232.aspx

BCP 사용 데이터 형식들 확인

https://msdn.microsoft.com/ko-kr/library/ms189110.aspx

BCP 설명

http://onesixx.tistory.com/959

XML서식 등록, 수정 방법

http://madhuottapalam.blogspot.kr/2008/08/creating-files-from-images-stored-in.html 

 





-- 1. xp_cmdshell 활성화 - 쿼리문 필요할때만 실행

exec master.dbo.sp_configure 'show advanced options', 1
go
reconfigure
go
exec master.dbo.sp_configure 'xp_cmdshell', 1
go
reconfigure
go

 

--2. CMD

- sqlcmd

@echo off
sqlcmd -S10.100.20.5 -Usa -Ppassword_1 -drptm_201312 -Q"select * from rptm_201312.dbo.report_send_file_20131229" > C:\20131229.csv

 

- bcp- 마지막에 콤마 찍을 것

@echo off
bcp "select * from rptm_201312.dbo.report_send_file_20131229" queryout C:\20131229.csv -T -c -t,

 

- zip file 이 디비에 넣어져 있는데 밖으로 꺼낼 방법 찾음

  다른사람이 만든 BCP 명령 - 엔터 - 0 - 엔터 - 엔터 - n 선택 하여 파일 추출 방법은 있음

  (예상 참조 : http://stackoverflow.com/questions/7597321/export-image-column-from-sql-server-2000-using-bcp)

C:\>bcp "select log_file_data from ewv6_logm_201504.dbo.log_date_fc where log_time = '2015041813' and log_engine_index =1" queryout "c:\00012015041813li.zip" -T

bcp명령의 인수를 이용한 여러방법을 시도하였으나 zip file을 열지 못함

XML서식을 이용한 파일 출력을 할수 있을 것 같음..

zip파일이므로 비XML서식파일로 검색검색~~

***** 결과 *************************

XML서식을 만듬(ew_cc_queryout.fmt)


out_log.fmt


저장된 서식을 이용한 zip file 추출




20160109 추가사항

zip 파일이 이미지 형태로 DBMS에 저장되어 있음 

bcp명령을 통한 이미지 출력

1.bcp 명령을 통하여 fmt 파일을 만듬

> bcp ewv7s_logm_201601.dbo.log_date_fc format nul -T -n -f c:\00\out_log.fmt

2. fmt 파일 수정


out_log_원본.fmt


out_log_수정본.fmt

이미지 부분만 남기고 삭제 후 파일 내용 수정


3. 수정본 fmt 파일을 이용한 zip 파일 출력

> bcp "select log_file_data from ewv7s_logm_201601.dbo.log_date_fc where log_time='201601040900'" queryout C:\00\log_out_file\201601040900.zip -T -fC:\00\out_log.fmt






내보내기

cmd

>bcp Table_Name out File_Name -c -S Server_Name -U User_Name -P Password

>bcp policy.dbo.rule_block out c:\block.csv -c -S100.0.0.100 -Usa -Ppassword_1


가져오기

cmd

>bcp Table_Name in File_Name -T -c -S Server_Name -U User_Name -P Password

>bcp policy.dbo.rule_block in c:\block.csv -T -c -S10.0.0.200 -Usa -Ppassword_1



'-- STuDy -- > 데이터 베이스' 카테고리의 다른 글

[연결된서버] 링크드 서버  (0) 2014.11.06
[DBMS] 뷰테이블 생성,삭제  (0) 2013.11.12
[쿼리] 이중 join  (0) 2013.07.28
[쿼리] select와 where  (0) 2013.07.14
[MS-SQL 2000, 2005] 계정 암호 변경  (0) 2013.07.03

[시그윈] 설치

Posted 2014. 4. 21. 22:19

 

참조블로그

http://detectiveboy.tistory.com/22

 

다운로드

http://www.cygwin.com/install.html

 

 

'-- STuDy -- > 컴퓨터' 카테고리의 다른 글

[사이트] 유용한 사이트 모음  (0) 2016.12.29
[도메인] 퓨니코드  (0) 2015.02.04
[MS워드] 목차만들기  (0) 2014.04.14
[레지스트리] 원격포트 변경  (0) 2013.07.26
[노트북]펑션키 고정시  (0) 2013.04.26

[구성] 서비스포트변경

Posted 2014. 4. 21. 21:56

 

구성관리자 - TCP/IP 속성 - IP ALL

 

 

 

 

 

'-- STuDy -- > MS SQL 2008' 카테고리의 다른 글

ms-sql 2008 express  (0) 2012.05.18

[MS워드] 목차만들기

Posted 2014. 4. 14. 22:00

 

보기 - 개요

 

참조 - 목차

 

 

'-- STuDy -- > 컴퓨터' 카테고리의 다른 글

[도메인] 퓨니코드  (0) 2015.02.04
[시그윈] 설치  (0) 2014.04.21
[레지스트리] 원격포트 변경  (0) 2013.07.26
[노트북]펑션키 고정시  (0) 2013.04.26
[사용자] win7 administrator 활성화  (0) 2013.01.26

[와이어샤크] 필터

Posted 2014. 4. 7. 08:54

 

참조블로그

http://www.packetinside.com/2012/02/blog-post.html

 

 

= 와이어샤크 캡쳐 필터(Capture Filter)

 

  - 출발지 IP 필터

    host 192.168.0.100

 

  - 대역 필터

    net 192.168.0.0/24 or

    net 192.168.1.0 mask 255.255.255.0

 

  - 목적지 IP 필터

    dst ip 1.2.3.4

 

  - 목적지 Port 필터

    dst port 80

 

  - TCP Port 구간 필터

    tcp portrange 1117-1119

 

  - SYN 패킷만 필터

    (tcp[13] & 0x02) != 0

 

  - TCP 프로토콜 과 UDP 프로토콜만 필터

    tcp and udp

 

 

 

= 와이어샤크 디스플레이 필터(Display Filter)

 

상황1) 172.16.36.0 C클래스대역을 모니터링 하고 싶지 않을 때

ip.addr != 172.16.36.0/24

 

 

[DBMS] 뷰테이블 생성,삭제

Posted 2013. 11. 12. 09:14

 

-- 테이블 생성(뷰테이블이 참조 예정)

create table Duty
(
 biz_duty varchar(100) not null,
 biz_duty_nm varchar(100)
);

 

 

-- 뷰테이블 생성

create view Duty_View as
select biz_duty, biz_duty_nm
from Duty.dbo.Duty;

 

-- 2개테이블 참조하는 뷰테이블 생성

create view cat_view as

select policy.dbo.catinfo.cat, policy.dbo.url_descript.desc_cat, policy.dbo.catinfo.catname1, policy.dbo.catinfo.catname2, policy.dbo.url_descript.desc_name from policy.dbo.catinfo

left join policy.dbo.url_descript

on policy.dbo.catinfo.cat = policy.dbo.url_descript.cat

group by policy.dbo.catinfo.cat, policy.dbo.url_descript.desc_cat, policy.dbo.catinfo.catname1, policy.dbo.catinfo.catname2, policy.dbo.url_descript.desc_name;

 

-- 뷰테이블 삭제

drop view cat_view;

 

-- 필드값 삭제

-- 데이터베이스 test에서 song가 들어가 필드 삭제

delete from dbo.test

where name like 'song'

 

 

'-- STuDy -- > 데이터 베이스' 카테고리의 다른 글

[연결된서버] 링크드 서버  (0) 2014.11.06
[MSSQL] 파일 내보내기  (0) 2014.05.22
[쿼리] 이중 join  (0) 2013.07.28
[쿼리] select와 where  (0) 2013.07.14
[MS-SQL 2000, 2005] 계정 암호 변경  (0) 2013.07.03

[쿼리] 이중 join

Posted 2013. 7. 28. 17:56

 

참조 블로그

http://blog.naver.com/PostView.nhn?blogId=ssuyastory&logNo=100186991756

 

 

 

조인의 목적

두개 이상의 테이블을 서로 묶어서 하나의 결과 집합을 만듬

 

조인시에는 열이름이 동일하여야 한다

 

!

select a.userid, a.name, b.client, c.ip

from action a

join buy b

on a.userid = b.userid

left join cal c

on c.ip = b.ip

order by a.name

!

 

 

 

inner join - 내부조인

 

inner join 1

select *

from action

join buy

on action.userid = buy.userid

 

inner join 2 - 호환성의 이유로 잘 사용하지 않음

select *

from action, buy

where action.userid = buy.userid

 

 

outer join - 외부조인

 

left outer join - 왼쪽의 내용이 있으면 모두 표시

select *

from action a

left ( right | full ) outer join buy b

on a.userid = b.userid

order by a.userid

 

 

'-- STuDy -- > 데이터 베이스' 카테고리의 다른 글

[MSSQL] 파일 내보내기  (0) 2014.05.22
[DBMS] 뷰테이블 생성,삭제  (0) 2013.11.12
[쿼리] select와 where  (0) 2013.07.14
[MS-SQL 2000, 2005] 계정 암호 변경  (0) 2013.07.03
[쿼리] insert, delete, update  (0) 2013.05.28

[레지스트리] 원격포트 변경

Posted 2013. 7. 26. 11:54

 

Windows 7 원격포트 변경

 

 

 

 

 

'-- STuDy -- > 컴퓨터' 카테고리의 다른 글

[도메인] 퓨니코드  (0) 2015.02.04
[시그윈] 설치  (0) 2014.04.21
[MS워드] 목차만들기  (0) 2014.04.14
[노트북]펑션키 고정시  (0) 2013.04.26
[사용자] win7 administrator 활성화  (0) 2013.01.26

[쿼리] select와 where

Posted 2013. 7. 14. 18:38

 

참조

http://technet.microsoft.com/ko-kr/library/ms189499.aspx

 

 

SELECT [ ALL | DISTINCT ]
    [TOP ( expression ) [PERCENT] [ WITH TIES ] ]
    < select_list >
    [ INTO new_table ]
    [ FROM { <table_source> } [ ,...n ] ]
    [ WHERE <search_condition> ]
    [ <GROUP BY> ]
    [ HAVING < search_condition > ]

 

 

select *

from 직원;

 

 

 

100보다 크고 200 보다 작은 범위로 검색

select *

from 직원

where 컬럼1 >= 100 AND 컬럼1 <= 200;

=

where 컬럼1 between 100 and 200;

 

 

 

AAA, BBB, CCC 검색

select *

from 직원

where 컬럼1='AAA' or 컬럼1='BBB' or 컬럼1='CCC';

=

where 컬럼1 in ('AAA','BBB','CCC');

 

 

 

부분문자 검색

select *

from 직원

where date between '97/01/01' and '97/12/31';

=

where date like '97%';

=

where date like '97______';

 

 

'-- STuDy -- > 데이터 베이스' 카테고리의 다른 글

[DBMS] 뷰테이블 생성,삭제  (0) 2013.11.12
[쿼리] 이중 join  (0) 2013.07.28
[MS-SQL 2000, 2005] 계정 암호 변경  (0) 2013.07.03
[쿼리] insert, delete, update  (0) 2013.05.28
[쿼리] MS-SQL 버전확인  (0) 2013.04.23

[기능] 라우터, 스위치

Posted 2013. 7. 13. 17:06

 

스위치 - 스위칭

 

라우터 - 라우팅, 필터링, NAT(Network Address Translation), 암호화, 터널링, 압축,

            QoS(Quality oo Service), ICMP(Internet Control Messaging Protocol)메시지 보내기,

            멀티캐스팅 라우팅, Expired TTL 패킷 폐기, MTU초과시 패킷을 자르고 순서 번호 매기기

            DHCP서비스

 

 

'-- STuDy -- > 네트워크_기초' 카테고리의 다른 글

[와이어샤크] 필터  (0) 2014.04.07
[소켓] 통신종료 및 TIME-WAIT  (0) 2013.07.11
ISP별 DNS주소  (0) 2012.04.05
[기본] 통신 - 기본구성, 2계층프로토콜, 속도, IEEE  (0) 2010.11.21
[기본] OSI 7계층  (0) 2010.11.21

[소켓] 통신종료 및 TIME-WAIT

Posted 2013. 7. 11. 11:45

 

출처 :http://krkim.net/526

소켓 종료와 TIME_WAIT(Socket termination and TIME_WAIT)


시간: 오전 8:32 작성자: kkrrrrrrrrrrr


소켓 종료와 TIME_WAIT(Socket termination and TIME_WAIT)
진리는어디에 2007/03/19 20:22
오늘은 소켓의 종료와 그에 따라 발생하는 소켓의 상태 변화에 대해 알아 보도록 하겠다.

먼저 소켓은 생성될 때는 3-way hand shaking을 통해서 생성되지만, 종료 될때는 한단계 더 많은 4-way hand shaking을 거쳐 종료 된다.

 


four way handshake


위에서 분명히 4-way.. 4단계라고 이야기 했다. 그럼 어떤 4단계를 거치는지 알아 보자.


1. A가 B에게 연결 종료를 요청한다.
2. B는 바로 종료를 하는 것이 아니라, 단순히 ACK만을 날리고 있다. B도 종료 하기 전에 할
일이 있기 때문에 바로 FIN을 날리지 않고, 단순히 ACK를 날리고 CLOSE_WAIT 상태로 넘어
간다.
3. 볼일을 다 보고난 B는 이제서야 FIN을 날리고 연결을 종료 하고자 한다.
4. A는 B의 FIN을 잘 받았다는ACK를 B에게 보내게 되고, A의 ACK를 받으면 B는 종료한다.


4의 과정에서 A는 ACK를 날리고 난후 소켓이 제거될때 까지 TIME_WAIT상태에 있게 되며 이 시간은 대략 30 초 정도지만 시스템 마다 다르다.
TIME_WAIT에 있는 동안에는 커널이 주소와 port를 바인딩 하고 있기때문에 재사용 할 수가 없다. 게다가 TIME_WAIT에 있는 주소와 port를 재사용 요청을 하면 TIME_WAIT 시간을 더욱 늘릴 뿐이다.

그렇다면 이렇게 불편한 TIME_WAIT를 왜 사용해야만 하는가??
만일 A가 B로 보낸 마지막 종료 메시지(SEQ:5001,ACK:6002) 이후 바로 종료 했다고 가정하자. 그런데 라우터의 문제라던지 기타등등의 네트워크 상에서 발생하는 어떠한 원인에 의해 마지막 종료 메시지가 B에 도착하지 않게되었다.
이때쯤 되면 B는 종료하지 못하고(TCP는 소심해서 뭘 하던지 완료 메시지를 받아야 마음을 놓는다) 다시 A에게 한번 더 FIN(SEQ:6001, ACK:5001)을 날린다.
여기서 A가 TIME_WAIT가 아니라 바로 종료 되어버린 상태 였다면, 이 마지막 FIN 역시 무시했을 테고 B는 여전히 A가 종료 되었는지 살아 있는지 모르고 아둥바둥거리고 있게 될 것이다. 하지만 TIME_WAIT에 있는 A의 소켓은 여전히 주소와 포트를 바인딩 하고 있는 상태이기 때문에 다시 날아 오는 B의 FIN을 감지하고 다시한번 마지막 ACK를 날려 줄 수 있는 것이다.

 

 

 

'-- STuDy -- > 네트워크_기초' 카테고리의 다른 글

[와이어샤크] 필터  (0) 2014.04.07
[기능] 라우터, 스위치  (0) 2013.07.13
ISP별 DNS주소  (0) 2012.04.05
[기본] 통신 - 기본구성, 2계층프로토콜, 속도, IEEE  (0) 2010.11.21
[기본] OSI 7계층  (0) 2010.11.21

[MS-SQL 2000, 2005] 계정 암호 변경

Posted 2013. 7. 3. 09:18

 

1. 커멘드창

 

2. MS-SQL 2005

C:\> sqlcmd

1> alter login sa with password='새로운암호';

2> go

1> exit

C:\>

 

3. MS-SQL 2000

%MS-SQL Home%\bin> osql -Esp_password @old=null, @new='새로운암호', @loginname='sa'

 

 

'-- STuDy -- > 데이터 베이스' 카테고리의 다른 글

[쿼리] 이중 join  (0) 2013.07.28
[쿼리] select와 where  (0) 2013.07.14
[쿼리] insert, delete, update  (0) 2013.05.28
[쿼리] MS-SQL 버전확인  (0) 2013.04.23
[쿼리] union, union all  (0) 2013.03.29

[쿼리] insert, delete, update

Posted 2013. 5. 28. 13:05

 

insert into 테이블명 values(값 순서대로)

insert (테이블명)(추가할 레코드들) values(추가할 레코드의 값들)

 

insert into policy..shrule_usersite values ('www.dreamwiz.com','100','');

 

 

 

delete from 테이블명 where (조건)

 

update (테이블명) set 컬럼명=값 where (조건)


'-- STuDy -- > 데이터 베이스' 카테고리의 다른 글

[쿼리] select와 where  (0) 2013.07.14
[MS-SQL 2000, 2005] 계정 암호 변경  (0) 2013.07.03
[쿼리] MS-SQL 버전확인  (0) 2013.04.23
[쿼리] union, union all  (0) 2013.03.29
[백업] 백업,복원 쿼리  (0) 2012.10.05

[노트북]펑션키 고정시

Posted 2013. 4. 26. 21:24

 

노특북 사용시 펑션키가 고정되면!!!

 

펑션키 + NumLock

 

 

'-- STuDy -- > 컴퓨터' 카테고리의 다른 글

[도메인] 퓨니코드  (0) 2015.02.04
[시그윈] 설치  (0) 2014.04.21
[MS워드] 목차만들기  (0) 2014.04.14
[레지스트리] 원격포트 변경  (0) 2013.07.26
[사용자] win7 administrator 활성화  (0) 2013.01.26

[쿼리] MS-SQL 버전확인

Posted 2013. 4. 23. 20:12


MS-SQL 버전확인

select @@VERSION





'-- STuDy -- > 데이터 베이스' 카테고리의 다른 글

[쿼리] select와 where  (0) 2013.07.14
[MS-SQL 2000, 2005] 계정 암호 변경  (0) 2013.07.03
[쿼리] insert, delete, update  (0) 2013.05.28
[쿼리] union, union all  (0) 2013.03.29
[백업] 백업,복원 쿼리  (0) 2012.10.05

[쿼리] union, union all

Posted 2013. 3. 29. 20:18


union 테이블을 합하여 보여줌


(select * from testbl)

union

(select * from testbl2)

order by 컬럼;




union all

union 은 중복데이터는 한번만 표시

union all 은 중복 데이터도 다 표시




'-- STuDy -- > 데이터 베이스' 카테고리의 다른 글

[쿼리] select와 where  (0) 2013.07.14
[MS-SQL 2000, 2005] 계정 암호 변경  (0) 2013.07.03
[쿼리] insert, delete, update  (0) 2013.05.28
[쿼리] MS-SQL 버전확인  (0) 2013.04.23
[백업] 백업,복원 쿼리  (0) 2012.10.05


시작 - 실행 - regedit


HKEY_LOCAL_MACHINE\

SYSTEM\

CurrentControlSet\

Control\

Terminal Server\

WinStations\

RDP-Tcp


디폴트

3389(10)



[사용자] win7 administrator 활성화

Posted 2013. 1. 26. 17:23

 

참조블로그 : http://blog.daum.net/eagle7979/48

 

windows 에서 administrator 계정 활성화 방법

 

명령프롬프트를 관리자 권한으로 실행

C:\Windows\system32> net user administrator /active

제어판 - 사용자계정 에 administrator 생성됨

 

administrator 계정 비활성화

C:\Windows\system32> net user administrator /active:no

 

 

'-- STuDy -- > 컴퓨터' 카테고리의 다른 글

[도메인] 퓨니코드  (0) 2015.02.04
[시그윈] 설치  (0) 2014.04.21
[MS워드] 목차만들기  (0) 2014.04.14
[레지스트리] 원격포트 변경  (0) 2013.07.26
[노트북]펑션키 고정시  (0) 2013.04.26

[백업] 백업,복원 쿼리

Posted 2012. 10. 5. 20:31

 

백업, 복원 관련 쿼리문 블로그

http://cafe.naver.com/zzzzzzero/154

 

 

 

 

## 백업 복원

1) 쿼리 명령으로 백업할 db를 설정해 특정 파일로 출력합니다
BACKUP DATABASE dbname TO DISK = 'D:/filename.backup' WITH INIT;

2) 쿼리 명령으로 실행하여 2번째 row의 mdf, log의 name를 확인합니다

sp_helpdb dbname

3) 이전 서버로 파일을 옴긴뒤

4) 쿼리 명령으로 복원합니다

RESTORE DATABASE language FROM DISK = 'C:/filename.backup'

WITH MOVE 'dbname_Data' to 'C:\Program Files\Microsoft SQL Server\MSSQL$LANGUAGE\Data\dbname_Data.mdf'
, MOVE 'dbname_Log' to 'C:\Program Files\Microsoft SQL Server\MSSQL$LANGUAGE\Data\dbname_Log.mdf'


## 분리 연결

1) studio에서 해당 데이터베이스에서 마우스 오른쪽 태스크 에서 분리를 선택

2) 분리한 mdf,log파일을 이전하거나 연결할 db에 이동

3) 데이터베이스 상위에서 마우스 오른족 연결 , 데이터베이스 연결에서 추가 , 기존 mdf파일을 선택

'-- STuDy -- > 데이터 베이스' 카테고리의 다른 글

[쿼리] select와 where  (0) 2013.07.14
[MS-SQL 2000, 2005] 계정 암호 변경  (0) 2013.07.03
[쿼리] insert, delete, update  (0) 2013.05.28
[쿼리] MS-SQL 버전확인  (0) 2013.04.23
[쿼리] union, union all  (0) 2013.03.29

ms-sql 2008 express

Posted 2012. 5. 18. 22:10

 

블로그

http://blackturtle.tistory.com/711561

 

 

 

'-- STuDy -- > MS SQL 2008' 카테고리의 다른 글

[구성] 서비스포트변경  (0) 2014.04.21

ISP별 DNS주소

Posted 2012. 4. 5. 13:00

 

참조블로그 :  http://iz4blue.tistory.com/63

 

* 한국통신(KT)- 주 DNS 주소: 168.126.63.1 - 보조 DNS 주소: 168.126.63.2

 

* 데이콤- 주 DNS 주소: 164.124.101.2 - 보조 DNS 주소: 203.248.252.2

 

* 두루넷- 주 DNS 주소: 210.117.65.1 - 보조 DNS 주소: 210.117.65.2

 

* 신비로- 주 DNS 주소: 202.30.143.11 - 보조 DNS 주소: 203.30.143.11

 

* 하나로- 주 DNS 주소: 131.107.1.7 - 보조 DNS 주소: 210.94.0.7

 

* 드림라인- 주 DNS 주소: 210.181.4.25 - 보조 DNS 주소: 210.181.1.24

 

 

[라우터] IGP, EGP

Posted 2010. 12. 20. 10:34


IGP ( 내부라우팅, Interior Gateway Protocol ) 

┃                                                                  ┏ RIP      http://songhs.tistory.com/37
┣ 거리벡터알고리즘 (Distance Vector Algorithm)   ╋ IGRP    http://songhs.tistory.com/38
┃                                                                  ┗ EIGRP  http://songhs.tistory.com/39

┗ 링크상태알고리즘 (Link State Algorithm) - OSPF  http://songhs.tistory.com/40




EGP ( 외부라우팅, Exterior Gateway Protocol ) 
┗ BGP

 
 

[스위치] VTP

Posted 2010. 11. 23. 17:32


 
  * VTP(VLAN Trunking Protocol) : 스위치들 간에 VLAN 정보를 서로 주고 받아 스위치들이 가지고 있는
                                                 VLAN 정보를 항상 일치 주기 위한 프로토콜

  * 트렁킹 : 여러개의 VLAN 패킷을 한번에 전송하는 방식. 스위치-스위치, 스위치-라우터 간

  * VLAN 트렁킹 방식
= IEEE 802.1Q 방식 : 표준 프로토콜
  - 스위치에서 하나의 VLAN 만이 네이티브 VLAN 이 된다.
  - 네이티브 VLAN 을 제외한 나머지 VLAN 의 패킷에는 이름표를 붙여지고
      네티티브 VLAN 에는 이름표가 없다.
= ISL 트렁킹 : 시스코에서 만든 트렁킹 프로토콜
  - 네이티브 VLAN 이란 개념이 없이 모든 VLAN 에 이름표를 붙임



  * VTP 의 3가지 모드
= VTP 서버 모드 : 정보제공
  - 모든 VLAN 에 대한 정보를 NVRAM 에서 관리
= VTP 클라이언트 모드
= VTP 트랜스페어런트 모드 : 혼자 노는 놈
  - 자기 정보 자기가 알아서 관리



  * VTP 간 주고 받는 메시지
= Summary Advertisement
  - 5 분 마다 한번씩 메시지 전달
  - Revision 넘버 업데이트 후 보냄
= Subset Advertisment
  - VLAN 의 정보가 담겨 있음
  - 클라이언트로 부터 Advertisement Request 메시지 받았을 때 전송
= Advertisement Request
  - 더 높은 Revision 넘버를 갖는 Summary Advertisement 를 전달 받거나
     VTP 도메인 이름이 바뀌거나, Subset Advertisment 메시지를 잃어버렸거나
     스위치가 새로 리셋 되었을 경우 Advertisement Request 메시지를 VTP 서버에 보냄

VTP 서버 Summary Advertisment 에 도메인이름, Revision 넘버들을 넣어 포워딩 VTP 클라이언트
 ---------------------------------------------------------------------------------→
 
클라이언트는 수신후 서버에게 Advertisment Request 를 보내 업데이트된 VLAN 정보 요청
  ←--------------------------------------------------------------------------------
 
서버는 Summary Advertisment 와 Subset Advertisment 를 해당 클라이언트에 보낸다
  -----------------------------------------------------------------------------→





'-- STuDy -- > 네트워크_스위치' 카테고리의 다른 글

[스위치] 스패닝트리(STP)  (0) 2010.11.22
[스위치] 기능  (0) 2010.11.22