EIGRP에 대한 이해: 초보 개발자를 위한 가이드

이미지
EIGRP에 대한 이해: 초보 개발자를 위한 가이드 개요 EIGRP(Enhanced Interior Gateway Routing Protocol)는 시스코에서 개발한 고급 거리 벡터 라우팅 프로토콜입니다. 이 프로토콜은 기존의 거리 벡터 라우팅 프로토콜과 링크 상태 라우팅 프로토콜의 장점을 결합한 하이브리드 형태를 띠고 있습니다. 그렇기 때문에 EIGRP는 다음과 같은 기능적 특징을 가지고 있습니다: 장점 Advanced Distance Vector : 거리 벡터 라우팅의 고급 버전 Fast Convergence : 빠른 수렴 VLSM & CIDR 지원 : 가변 길이 서브넷 마스킹과 클래스 없는 도메인 간 라우팅 지원 다중 네트워크 계층 프로토콜 지원 : IP, IPX, AppleTalk 등 멀티캐스트 및 유니캐스트를 이용한 업데이트 100% 루프 프리 클래스리스 라우팅 동등 및 불균등 부하 분산 지원 단점 시스코 라우터에서만 사용 가능 대규모 네트워크 관리 어려움 네트워크 장애 시 문제 해결 어려움 관련 용어 Neighbor Table : 이웃 테이블, 인접 라우터 목록 관리 Topology Table : 토폴로지 테이블, 다른 EIGRP 이웃 라우터로부터 학습한 모든 경로 관리 Routing Table : 라우팅 테이블, 최상의 경로를 선택하여 저장 Successor & Feasible Successor : 최적 경로상의 이웃과 백업 경로상의 이웃 네트워크 정보 수집 및 경로 생성 과정 EIGRP에서 네트워크 정보를 수집하고 최적의 목적지 경로를 만드는 과정은 다음과 같습니다: EIGRP 이웃 테이블 생성 및 IP 라우팅 테이블 교환 라우팅 테이블 정보 EIGRP 토폴로지 테이블에 저장 최상의 경로 및 다른 적합한 경로 파악 토폴로지 테이블에서 최상의 경로를 라우팅 테이블에 저장 EIGRP 컴포지트 벡터 메트릭 EIGRP는 여러 벡터 메트릭을 결합하여 경로를 계산합니다. 아래는 show ip eigrp topology 명령어를 사용한 예시와...

MySql

[문법]

1. SELECT
select [COLUMN_NAMES] from [TABLE_NAME] where [COLUMN_NAME]=[SEARCH_VALUE] order by [COLUMN_NAME] asc/desc;

2. INSERT
insert into [TABLE_NAME] VALUES(DATA_1, DATA_2, DATA_3...);
insert into [TABLE_NAME] (COLUMN_1, COLUMN_2, COLUMN_3) VALUES (DATA_1, DATA_2, DATA_3);

3. DELETE
delete from [TABLE_NAME] where [COLUMN_NAME]=[SEARCH_VALUE];

4. UPDATE
update [TABLE_NAME] set [COLUMN_NAME]=[UPDATE_VALUE] where [COLUMN_NAME]=[SEARCH_VALUE];
update [TABLE_NAME] set [COLUMN_NAME_1]=[UPDATE_VALUE_1], [COLUMN_NAME_1]=[UPDATE_VALUE_2] where [COLUMN_NAME]=[SEARCH_VALUE];

5. CREATE
CREATE TABLE [TABLE_NAME] ( [COLUMN_NAME] [TYPE] [OPTION],[COLUMN_NAME] [TYPE] [OPTION] );
ex)
CREATE TABLE TEST_TABLE ( TEST1 INT NOT NULL COMMENT '테스트코멘트1',  TEST2 VARCHAR COMMENT '테스트코멘트2', PRIMARY KEY(TEST1));

6. SHOW INDEX
show index from [TABLE_NAME];

7. INSERT & UPDATE
insert into [TABLE_NAME] (COLUMN_1, COLUMN_2, COLUMN_3) VALUES(DATA_1, DATA_2, DATA_3) on duplicate key update COLUMN_1=DATA_1, COLUMN_2=DATA_2, COLUMN_3=DATA_3;


[컬럼 조작]

1. 추가

alter table [TABLE_NAME] add [COLUMN_NAME] [COLUMN_TYPE] [COLUMN_POSITION] default [VALUE];

2. 변경

alter table [TABLE_NAME] change [BASE_COLUMN_NAME] [MODIFY_COLUMN_NAME] [COLUMN_TYPE];
ALTER TABLE [TABLE_NAME] CHANGE [BASE_COLUMN_NAME] [MODIFY_COLUMN_NAME] [COLUMN_TYPE] CHARACTER SET utf8 COLLATE utf8_general_ci NULL ;


3. 타입변경

alter table [TABLE_NAME] modify [COLUMN_NAME] [MODIFY_COLUMN_TYPE];

4. 삭제

alter table [TABLE_NAME] drop [COLUMN_NAME];



[특정 시간 내의 자료]

select COLUMN_NAME from TABLE_NAME where COLUMN_NAME between '2013-02-01 00:00:00.0' and '2013-02-28 00:00:00.0' group by substring(COLUMN_NAME , 1, 10);



[DB 용량]

SELECT table_name, SUM(data_length + index_length) / 1024 / 1024 "Size(MB)"

FROM information_schema.TABLES

WHERE table_schema ='가져올 데이타베이스 이름'

GROUP BY table_name ;


[TABLE 용량]


select

concat(table_schema,'.',table_name),

concat(round(table_rows/1000000,2),'M') rows,

concat(round(data_length/(1024*1024*1024),2),'G') DATA,

concat(round(index_length/(1024*1024*1024),2),'G') idx,

concat(round((data_length+index_length)/(1024*1024*1024),2),'G') total_size,

round(index_length/data_length,2) idxfrac

from information_schema.tables

where table_name = 'TABLE_NAME' ;


[테이블 조회 결과 파일 저장]
select * from [DATABASENAME.TABLENAME] into outfile 'file output path' fields terminated by ',' enclosed by '"' lines terminated by '\n';

[외부 데이터 입력]

load data infile '파일경로' into table TABLE_NAME fields terminated by '|';

--> terminated by '|'; 옵션 추가 시 | 를 기준으로 데이터를 잘라서 입력한다.


[코멘트 달기]

alter table TABLE_NAME COMMENT '코멘트';

alter table TABLE_NAME MODIFY COLUMN_NAME varchar(6) comment '코멘트';


[테이블 복사]

create table DATABASENAME.TABLENAME(대상) select * from DATABASENAME.TABLENAME(원본);


[테이블 값 복사]

insert into DATABASENAME.TABLENAME(대상) select * from DATABASENAME.TABLENAME(원본);

** 중복 데이터 무시 -> insert ignore into ...


[DB 백업]

mysqldump -u 'USERID' -p 'DATABASENAME' > 'SAVEFILENAME(DUMPFILE)'


[DB 복원]

mysql -u 'USERID' -p 'PASSWD' --default-character-set='CHARSET' 'DATABASENAME' < 'LOADFILENAME(DUMPFILE)'


[TABLE 백업]

mysqldump -u 'USERID' -p "DATABASE'.'TABLENAME' > 'SAVEFILENAME(DUMPFILE)'


[DB 생성]

create database 'DATABASENAME';


[MYSQL DB 접근 권한 - GRANT 구문(USER ADD/DEL]( PWD만 문자열이라서 " 필요)

1. 권한 추가
grant all on 'DATABASENAME'.* to 'USERID'@'HOSTIP' identified by "PASSWD";(pwd는 문자열)
flush privileges;

2. 권한 제거
revoke all on *.* from user;
flush privileges;

3. 권한 확인
show grants for 'USERID'@'localhost';
(USERID = 접속계정, localhost = 접속IP)

[DB 백업 복구 관련 명령어]

test:db명 table1:테이블명


1. 백업하기

./mysqldump -u root -p test table1 > table1.sql


2. 복구하기

./mysqldump -u root -p test < table1.sql

[DB, Table character set 확인 방법]
1. Database 확인
SELECT default_character_set_name FROM information_schema.SCHEMATA S WHERE schema_name = "[DBNAME]";

2.Table 확인
SELECT CCSA.character_set_name FROM information_schema.`TABLES` T, information_schema.`COLLATION_CHARACTER_SET_APPLICABILITY` CCSA WHERE CCSA.collation_name = T.table_collation AND T.table_schema = "[DBNAME]" AND T.table_name = "[TABLENAME]";

3. Column 확인
SELECT character_set_name FROM information_schema.`COLUMNS` C WHERE table_schema = "[DBNAME]" AND table_name = "[TABLENAME]" AND column_name = "[COLUMNNAME]";

4. Show 명령어
SHOW FULL COLUMNS FROM [TABLENAME];
5. 생성문 조회
SHOW CREATE DATABASE [DBNAME];
SHOW CREATE TABLE [TABLENAME];

댓글

이 블로그의 인기 게시물

이클립스 오류 - 프로젝트 폴더가 열리지 않는 경우

Subversion (SVN) 설치 및 다중 저장소 설정 가이드

MySQL Root 비밀번호 재설정하기: 완벽한 가이드