728x90

스키마(schema)의 정의

1. 데이터베이스의 구조와 제약조건에 관한 전반적인 명세를 기술한다.

2.데이터베이스를 구성하는 개체, 속성, 관계 및 데이터 조작 시 데이터 값들이 갖는 제약 조건 등에 전반적으로 정의 한다.

3. 스키마는사용자 관점에 따라 외부 스키마, 내부스키마, 개념스키마로 나뉜다.

4. 스키마는 데이터사전에 저장되며, 다른이름으로 메타 데이터라고도 한다.



스키만의 3계층 


외부스키마 = 서브스키마 =사용자 뷰


1. 사용자나 응용 프로그래머가 각 개인의 입장에서 필요로 하는 데이터베이스의 논리적 구조를 정의한다.

2. 전체 데이터베이스의 한 논리적인 부분으로 볼 수 있으므로 서브 스키마라고도 한다.

3. 하나의 데이터베이스의 시스템에는 여러 개의 외부 스키마가 존재 할수 있으며, 하나의 외부 스키마를 여러개의 응용 프로그램이나 사용자가 공용 할 수 있다.

4. 같은 데이터베이스에 대해서도 서로 다른 관점을 정의 할수 있도록 허용한다.


개념스키마 = 전체적인 뷰


1. DB의 전체적인 논리구조로서 모든 응용 프로그램이나 사용자들이 필요로 하는 데이터를 종합한 조직 전체의 DB 하나만 존재 한다.

2. 개체간의 관계와 제약조건을 나태내고 DB의 접근권한,보안 및 무결성 규칙에 관한 명세를 정의한다.

3. 단순히 스키마는 개념스키마라고 한다.

4. DB 관리자에 의해서 구성된다.


내부스키마


1.  물리적 저장장치의 입장에서 본 DB의 구조로, 물리적인 저장장치와 밀접한 계층이다.

2. 실제로 DB의 저장될 레코드의 물리적인 구조를 정의하고 저장 데이터 항목의 표현방법,내부 레코등,ㅣ 물리적 순서등을 나타낸다.

3. 시스템 프로그래머나 시스템 설계자가 보는관점의 스키마

4. DB 의 물리적인 구조를 정의

5. 데이터를 실제로 저장하는 방법을 기술

6. 물리적인 저장장치와 밀접한 계층



데이터베이스의 언어


데이터 정의언어 DDL


1. DB 구조, 데이터 형식, 접근 방식등을 DB 구축하나 수정할 목적으로 사용하는 언어

2. 번역할 결과가 데이터 사전이라는 특별한 파일에 여러 개의 테이블로 저장된다.


데이터 조작 언어 DML

1. 사용자로 하여금 데이터를 처리할 수 있게 도구로서 사용자가 DBMS 간의 인터페이스를 제공

2. 대표적인 데이터 조작어 (DML) 에는 질의어가 있으며, 질의어는 터미널에서 주로 사용하는 비절차적 데이터 언어이다.


데이터 제어 언어 DCL

1. 무결성, 보안 및 권한제어 , 회복등을 하기 위한 언어

2. 데이터를 보호하기 위한 데이터 보안,

3. 데이터 정확성을 위한 무결성 유지

4. 시스템에 장애 대비한 데이터의 회복과 병행수행 제어



데이터베이스 사용자


DBA

- 데이터베이스 시스템의 모든 관리와 운영 대한 책임을 지고 있는 사람이나 그룹을 의미한다.


응용프로그래머

- 응용 프로그래머는 일반 호스트언어로 프로그램을 작성 할떄 데이터 조작어를 삽입해서 일반 사용자가 응용 프로그램을 사용할 수 있게, 인터페이스를 제공할 목적으로 데이터베이스를 접근하는 사람


일반 사용자

- 보통 일반사용자는 터미널을 이용하여 데이터베이스에 있는 자원을 활용할 목적으로 질의어나 응용 프로그램을 사용하여 데이터베이스에 접근하는 사람

728x90
728x90

과목  : 데이터베이스 필기 정리1


정보시스템 

- 조직체에 필요한 데이터를 수집, 저장해 두었다가 필요시에 처리해서 의사 결정에 유용한 정보를 생성하고 

  분배하는 수단

- 사용 목적에따라 1.경영정보 시스템 2. 군사 정보시스템 3. 인사행정 정보 시스템 4. 의사결정 지원 시스템등 사용


자료

- 현실세계에서 관찰이나 측정을 통해 수집한 단순한 사실이나 결과값으로 가공되지 않은 상태


정보

- 의사 결정에 도움을 줄 수 있는 유용한 형태, 자료를 가공 해서 얻은 결과물

       

자료 -> 가공(처리) -> 정보


데이터웨어 하우스                      

- 조직이나 기업체의 중심이 되는 주요 업무 시스템에서 추출되어 새로이 생성된 테이터베이스로써 의사 결정 지원 시스템을 지원하는 주체적, 통합적, 시간적 데이터의 집합체                                           



데이터베이스 정의

- 통합된 데이터(Integrated Data) : 자료의 중복을 배제한 데이터의 모임

- 저장된 데이터(Stored Data) : 컴퓨터가 접근 할 수 있는 저장 매체에 저장된 자료

- 운영 데이터(Operation Data) : 조직의 업무를 수행하는데 있어서 존재 가치가 확실하고 없어서는 안될 반드시 필요한 자료

- 공용 데이터(Shared Data) : 여러 응용 시스템들이 공동으로 소유하고 유지 하는 자료



데이터베이스의 특징

- 실시간 접근성 : 수시적이고 비정형적인 질의(조회)에 대하여 실시간 처리에 의한 응답이 가능

- 게속적인 변화 : 새로운 데이터의 삽입, 삭제, 갱신으로 항상 최신의 데이터를 유지함

- 동시공유 : 여러사용자가 동시에 자기가 원하는 데이터를 이용 할 수 있음

- 내용에 의한 참조 : 데이터베이스의 데이터를 참조할떄 데이터 주소나 위치에 의해서가 아니라 사용자가 요구하는 데이터의 내용으로 데이터를 찾음


DBMS (DataBases Management System) 의 정의

- 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성하고 데이터베이스를 관리 해주는 소프트웨어

- 기존 파일시스템의 갖는 데이터 종속성, 중복성의 문제를 해결하기 위해서 제안된 시스템으로 모든 응용 프로그램들이 데이터베이스를 공용할 수 있도록 관리 해준다.

- 데이터베이스의 구성, 접근방법, 유지관리에 대한 모든 책임을 진다.


DBMS의 필수 기능

- 정의 : 데이터와 데이터의 관계를 명확하게 명세 할수 있어야 하며, 원하는 데이터 연산은 무엇이든 명세할 수있어야 한다.

- 조작 : 데이터의검색(요청), 갱신(변경), 삽입 삭제 등을 체계적으로 처리하기 위해 데이터 접근 수단 등을 정하는 기능

- 제어 : 정당한 사용자가 허가된 데이터만 접근할 수 있도록 보안을 유지하고 권한을 검사 할 수 있어야 한다, 여러 사용자가 데이터베이스를 동시 접근하고 데이터를 처리할떄 처리 결과가 항상 정확성을 유지하도록 병행 제어를 할 수 있어야 한다.


DBMS의 장단점

장점                                                    단점

- 데이터의 중복을 피할 수있음                        - 데이터베이스 전문가 부족

- 데이터의 일관성을 유지                               - 전산화 비용이 증가 

- 데이터의 무결성을 유지                               - 대용량 디스크의 집중적인

- 보안을 유지 가능                                          과부하가 발생함

- 데이터를 표준화할수 있음                            - 파일의 백업과 복구가 어려움

- 데이터를 통합하여 관리가 가능                     - 시스템이 복잡함

- 항상 최신의 데이터를 유지

- 데이터의 실시간 처리가 가능

- 데이터의 논리적, 물리적 독립성이 보장


기존 파일 처리 방식에 문제점

- 종속성으로 인한 문제 : 데이터 파일이 보조기억장치에 저장되는 방법이나 저장된 데이터의 접근방법을 변경할 떄는 응용 프로그램도 같이 변경해야 한다.


- 중복성 문제점 : 중복된 데이터 간에 내용이 일치하지 않는 상황이 발생하여 일관성이 없어짐

- 보안성 문제 : 중복되어 있는 모든 데이터에 동등한 보안 수준을 유지하기가 어려움

- 경제성 문제 : 저장공간의 낭비와 동일한 데이터의 반복 작업으로 인한 비용의 증가

- 무결 문제 : 제어의 분산으로 인해 데이터의 정확성을 유지하기가 어려움










728x90
728x90

DRBD 필요조건


1. 2 개의 디스크 (같은 크기) . 다른 영역

2. 네트워크가 같은 대역대어야 함

3. 작동중인 DNS 확인 (/etc/hosts 파일)

4. 두 노드의 NTP 동기화 시간

5. Selinux Permissive =>  setenforce 0 

6. Iptables ports (7788) 허용



참고 사이트 : https://www.unixmen.com/configure-drbd-centos-6-5/

              https://www.yongbok.net/blog/how-to-configure-drbd-on-centos/

   


참고사이트

http://blog.naver.com/PostView.nhn?blogId=oxcow119&logNo=221116122082&categoryNo=0&parentCategoryNo=10&viewDate=&currentPage=1&postListTopCurrentPage=1&from=postView




테스트 환경 및 서버 구성


CentOS 6.9


HostName    Type           IP          Storage

DRBD1     Primary     172.16.1.158     10G SSD

DRBD2    Secondary    172.16.1.159     10G SSD




□ Host Name 별칭 설정


# vi /etc/hosts   ( DRBD1 , DRBD2 같은 위치내용 복사)


# DRBD

172.16.1.158 DRBD1

172.16.1.159 DRBD2



# vi /etc/sysconfig/network (호스트 네임 변경)



HOSTNAME=DRBD1


HOSTNAME=DRBD2




# vi /etc/resolv.conf  (네임서버 등록)


nameserver 168.126.63.1

nameserver 8.8.8.8




□ NTP 동기화 (Both)


서버의 날짜 및 시간이 맞지 않으면 동기화가 되지 않을수 있기 때문에 

crontab을 이용하여 주기 적으로 동기화 될수 있도록 설정 합니다.

매 1분마다 동기화를 진행 하므로 NTP서버를 직접 구축해서 사용하는 것을 권장합니다


# crontab -e


# DATA SYNC

1 0 * * * rdate -s time.bora.net



rdate: timeout for time.bora.net (타임아웃 에러 발생시 보라넷 아이피로 시간 업데이트)


# rdate -s 203.248.240.140


서울시간 동기화

# ln -s /usr/share/zoneinfo/Asia/Seoul /etc/localtime


date  시간 확인



□ SELinux 모드 변경 (해제)


# vi /etc/sysconfig/selinux


SELINUX=disabled



□ DRBD 설치


cd /root


# rpm -ivh http://elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm


rpm -Uvh http://www.elrepo.org/elrepo-release-6-8.el6.elrepo.noarch.rpm  (에러발생)


* 설치되지않으면 http://dl.fedoraproject.org/pub/epel/6/x86_64로 접속해서 최신 버전을 다운로드 받는다



□ 파일 업로드후


# rpm -Uvh elrepo-release-6-8.el6.elrepo.noarch.rpm  (패키지 설치)


# yum install -y kmod-drbd84 drbd84-utils



□ iptables 해제


# iptables -F (방화벽 끄기)



□ 수동으로 DRBD Module을 커널에 적재 시킵니다.


# modprobe drbd



FATAL: Module drbd not found. (에러발생)


-> 리부팅



□ /dev/sdb1 디바이스는 mount 하지 않는다.



□ DRBD1, DRBD2 서버 다이렉트 케이블 연결



□ DRBD 복제 된 블록 장치 리소스 파일 만들기  ( DRBD1 , DRBD2 같은 위치내용 복사)



# cp /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.conf_ori  ( 파일 원본 백업 )



# vi /etc/drbd.d/global_common.conf


resource clusterdb

 {

 startup {

 wfc-timeout 30;

 outdated-wfc-timeout 20;

 degr-wfc-timeout 30;

 }

#net {

#cram-hmac-alg sha1;

#shared-secret sync_disk;

#}

#syncer {

#rate 10M;

#al-extents 257;

#on-no-data-accessible io-error;

#}


 on DRBD1 {

 device /dev/drbd0;

 disk /dev/sdb1;

 address 100.100.100.1:7788;

 meta-disk internal;

 }

 on DRBD2 {

 device /dev/drbd0;

 disk /dev/sdb1;

 address 100.100.100.2:7788;

 meta-disk internal;

 }

}


global { usage-count no; }                                                        

common {

  syncer {

    c-plan-ahead 10;

    c-min-rate 50M;

    c-max-rate 100M;

    c-fill-target 2M;

    verify-alg md5;

    al-extents 3389;

  }

  net {

    ko-count 10;

    max-buffers 128k;

    max-epoch-size 16000;

    sndbuf-size 8m;

    rcvbuf-size 8m;

    unplug-watermark 16001;

  }

  disk {

    no-md-flushes;

    no-disk-barrier;

    no-disk-flushes;

  }

}


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

vi /etc/drbd.d/global_common.conf


#include "drbd.d/global_common.conf";  

#include "drbd.d/*.res";  

global {  

usage-count no;  

}


common {  

# Speed of syncronization. Speed of the dedicated link:  

syncer {rate 100M;}  

}


resource clusterdb {  

  # transfer protocol to use.  

  # C: write IO is reported as completed, if we know it has  

  #    reached _both_ local and remote DISK.  

  #    * for critical transactional data.  

  # B: write IO is reported as completed, if it has reached  

  #    local DISK and remote buffer cache.  

  #    * for most cases.  

  # A: write IO is reported as completed, if it has reached  

  #    local DISK and local tcp send buffer. (see also sndbuf-size)  

  #    * for high latency networks  


protocol C;  

startup {  

wfc-timeout 15;  

degr-wfc-timeout 60;  

}


net {  

cram-hmac-alg sha1;  

shared-secret "secret";  

#allow-two-primaries;  

}


on DRBD1 {  

device /dev/drbd0;  

disk /dev/sdb1;  

address 172.16.1.158:7788;  

meta-disk internal;  

}


on DRBD2 {  

device /dev/drbd0;  

disk /dev/sdb1;  

address 172.16.1.159:7788;  

meta-disk internal;  

}  



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



□ 두 시스템에서 DRBD 메타 데이터 저장 영역을 초기화하십시오.  ( DRBD 1 , DRBD 2번 서버 동시 실행 )


# drbdadm create-md clusterdb   /  # drbdadm create-md all     


 

# /etc/init.d/drbd status  (drbd 상태보기)



※주의※  에러 발생시

만약 백업용으로 추가한 디스크 /dev/sdb를 마운트시켰다면 이 부분에서 아무 반응이 없을 것이다. 

DRDB는 os 레벨이 아닌 커널 레벨에서 동작하므로 마운트를 하지 않아도 디스크를 인식할 수 있다. 

따라서 추가한 디스크는 마운트 하지 않고 그냥 둔다


오류 1. 'xxx' not defined in your config (for this host)


xxx.res 파일 안에 있는 host를 찾지 못해서 발생하는 에러, host명이 정확한지 확인 필요



오류 2. 'access beyond end of device'


오류 메시지 중에 위의 메시지가 포함된 메시지가 있다면 디스크를 초기화 해주어야 한다


 # dd if=/dev/zero of=/dev/sda2 bs=500M   (/dev/sdb는 설정한 디바이스명)


 # dd if=/dev/zero of=/dev/sdb1 bs=1024 count=20000


cd 


dd if=/dev/zero of=/dev/sda3



You need to either

   * use external meta data (recommended)

   * shrink that filesystem first

   * zero out the device (destroy the filesystem)

Operation refused.


Command 'drbdmeta 0 v08 /dev/sdb1 internal create-md' terminated with exit code 40



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


□ DRBD 시작 - master/slave 모두


두 노드 모두에서 drbd를 시작하십시오.


# service drbd start

or

# /etc/init.d/drbd start  


오류3. 오류메시지에 degr-wfc-timeout 이 포함된 에러


동기화하려는 서버와 연결을 맺을 시간을 초과했다는 의미로 양 서버를 30초이내에 시작해주면 된다


(wfc-timeout에서 설정한 시간)


Starting DRBD resources: [

    adjust disk: clusterdbOperation canceled.

:failed(apply-al:20)



Command 'drbdsetup-84 primary 0' terminated with exit code 17


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

□ DRBD 프로세스 확인

[root@DRBD1 network-scripts]# ps -ef | grep drbd

root      9511     2  0 16:17 ?        00:00:00 [drbd-reissue]

root      9710     2  0 16:33 ?        00:00:00 [drbd_submit]

root      9718     2  0 16:33 ?        00:00:00 [drbd_w_clusterd]

root      9723     2  0 16:33 ?        00:00:00 [drbd_r_clusterd]

root      9732     2  0 16:33 ?        00:00:00 [drbd_a_clusterd]

root      9733     2  0 16:33 ?        00:00:00 [drbd_ack_sender]

root      9738  9482  0 16:33 pts/0    00:00:00 grep drbd


□ PRIMARY 노드에서 drbdadm 명령을 실행합니다.


drbdadm primary --force clusterdb    // DRBD V8.4 이후 (t


drbdadm secondary clusterdb



*slave 서버에서의 별도의sync 작업은 필요가 없습니다.



진행상황은 "drbd-overview" 명령으로 확인 가능, 혹은 "cat /proc/drbd"로도 확인 가능



이후 Primary와 Secondary의 동기화가 완료 될때까지 기다립니다.


# drbd-overview  (Sync완료 확인)


0:drbd_disk1/0 SyncSource Primary/Secondary UpToDate/Inconsistent C r----- 

[=================>..] sync'ed: 92.2% (800/10236)M



# cat /proc/drbd  (Sync완료 확인)



에러메세지 발생


Excess arguments: overwrite-data-of-peer

Command 'drbdsetup-84 primary 0 overwrite-data-of-peer' terminated with exit code 20


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


□ DRBD Device 파일 시스템 포멧 (Both) , Sync완료 후 미러링 여부 확인하기


clusterdb.res 에서 지정한 “/dev/drbd0″를 ext4 파일 시스템으로 포멧 합니다.


(primary에서만 된다. secondary는 파일 포맷이 안된다. slave니까)


# mkfs.ext4 /dev/drbd0   

 or       

# mkfs -t ext4 -j /dev/drbd0


mkdir /mnt

mount /dev/drbd0 /mnt

# mount

/dev/drbd0 on /data type ext4 


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

□ 분산 된 복제 된 블록 장치 장치에 파일 시스템 만들기


/sbin/mkfs.ext4 /dev/drbd0


 mke2fs 1.41.12 (17-May-2010)

 Filesystem label=

 OS type: Linux

 Block size=4096 (log=2)

 Fragment size=4096 (log=2)

 Stride=0 blocks, Stripe width=0 blocks

 131072 inodes, 524007 blocks

 26200 blocks (5.00%) reserved for the super user

 First data block=0

 Maximum filesystem blocks=536870912

 16 block groups

 32768 blocks per group, 32768 fragments per group

 8192 inodes per group

 Superblock backups stored on blocks:

 32768, 98304, 163840, 229376, 294912


Writing inode tables: done

 Creating journal (8192 blocks): done

 Writing superblocks and filesystem accounting information: done


This filesystem will be automatically checked every 26 mounts or

 180 days, whichever comes first. Use tune2fs -c or -i to override.




mke2fs 1.41.12 (17-May-2010)  => 테스트 명령어 실행시 서버 표시

mkfs.ext4: Wrong medium type while trying to determine filesystem size


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

□ 확인


[root@node1 ~]# df -h

Filesystem Size Used Avail Use% Mounted on

/dev/mapper/vg_unixmencentos65-lv_root 19G 3.6G 15G 20% /

tmpfs 1.2G 44M 1.2G 4% /dev/shm

/dev/sda1 485M 80M 380M 18% /boot

/dev/drbd0 2.0G 36M 1.9G 2% /data


참고 : 보조 컴퓨터에서 디스크를 마운트 할 필요가 없습니다. / data 폴더에 

쓰는 모든 데이터는 machine2에 동기화됩니다.


이를 확인하려면 기본 노드에서 / data 폴더를 마운트 해제하고 보조 노드를 

기본 노드로 만들고 / data를 두 번째 시스템에 마운트하면 / data 폴더에 동일한 

내용이 표시됩니다




□Mysql datadir 변경


아래 항목을 추가해줍니다.


#vi /etc/my.cnf


datadir=/data


---------------------------------------------테스트-----------------------------------------------------------------------------------


1. 파일 시스템으로 포맷하고 mount 하기


primary 노드에서 디바이스를 ext3 로 포맷팅하고 mount


* 주의 : /dev/sdb 를 포맷팅하는 것이 아니라 이를 대신 처리해주는 drbd 논리 디바이스인 /dev/drbd0에 수행해야한다.


DRBD1# mkfs.ext4 /dev/drbd0


DRBD1# mount /dev/drbd0 /mnt


* 주의 : secondary 노드의 블록 디바이스는 mirroring 만 되는 것이다. mount 되지 않는다. 

secondary 노드의 블록 디바이스를 mount 하기 위해서는 primary를 secondary 로 만들고 secondary 를 primary 로 만들어야한다.




2. mirroring 확인


primary 노드에서 마운트 진행하였고 여기에 파일을 하나 만든다.


DRBD1# touch /mnt/test



secondary 에 mirroring 되는지 확인하기 위해 secondary를 primary로 만들 것이다.


primary 노드는 하나밖에 지정못하므로 primary 를 우선 secondary 로 만들어야한다. secondary 로 만들기 전에 우선 umount 해야한다.



# primary를 secondary 만들기


DRBD1# umount /mnt


------------강제 umount--------------------------------

umount -v /mnt


umount: /mnt/mymount: device is busy.

(In some cases useful info about processes that use

the device is found by lsof(8) or fuser(1))


fuser -ck /mnt

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



# primary 를  secondary 만들기


DRBD1# drbdadm secondary test01 #test01은 resource_name이다.


DRBD1# drbdadm secondary clusterdb


# secondary를 primary 만들기


DRBD2# drbdadm primary clusterdb


DRBD2# drbdadm primary --force clusterdb


# secondary 노드 였던 drbd-2에서 마운트하여 확인하기


DRBD2# mount /dev/drbd0 /mnt


DRBD2# ls -al /mnt



확인해보면 drbd-1에서 생성했던 test 란 파일이 보일 것이다.



# drbd-overview  (Sync완료 확인)


0:drbd_disk1/0 SyncSource Primary/Secondary UpToDate/Inconsistent C r----- 

[=================>..] sync'ed: 92.2% (800/10236)M



# cat /proc/drbd  (Sync완료 확인)



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


====================================================================

8-16일 DRDB 테스트 결과



가상화 서버 (172.16.1.158) 리부팅후


/dev/sda5 (DRBD 공유된 디바이스) 날라감


linux read-only file system 에러발생


가상서버 말고 물리서버로 테스트 해봐야 할꺼 같습니다.


창고 쓸만한 서버 알려주시면 OS 인스톨후 테스트 진행하도록 하겠습니다.


====================================================================




















728x90
728x90

HTML 기본 태그



html 문서를 작성한 후 브라우저롤 확인한다.



 


html 문서는 머리말 <header> , 본문 <body>으로 구성되어 있습니다.



<html> ... </html> : html 작성된 문서를 나타냄



<head>... </head> : html 문서의 머리말을 말함




<body>... </body> : html 문서의 본문 내용을 담고 있음


HTML 문서 구조 (3가지 태그)

<html>

       <head> 

              <title>  첫번째 html 문서 </title>

       </head>

        <body>

                첫번째 html 문서입니다. <br>

                브라우저에서 어떻게 나타나는지 확인합니다. <br>

                html 문서

       </body>

</html>



머리말을 구성하는 <head> 태그에는 일반적으로 <title> 태그와 <base> 태그를 포함한다.

<title>태그는 문서의 제목을 브라우저 화면의 타이틀 바에 표시한다.



HTML 문서 구조 <base> 태그 사용


<html>

       <head> 

              <base href="http://www.w3school.com/image/">

       </head>

        <body>

                <img src="test.jpg>

                <a href="http://www.w3school.com">W3schools</a>

       </body>

</html>



bgcolor : 웹 페이지의 배경 색상을 지정함 (예 : bgcolor = "'#ff0000")


background : 주어진 이미지를 웹 페이즈의 배경으로 사용함 (예 : background = "images/test.jpg")


text : 웹 페이즈이 글자 색상을 지정 ( 예 : text = "black")


link / vlink / alink : 하이퍼링크에 대한 색상을 나타냅니다. link는 사용하지 않은 경우 , vlink는 이미 방문한 경우 , alink는 마우스를 눌렀을 때의 색상을 나타냄

                       (예 : <body link> = "red" , vlink = "#00ff00" , alink = "#0f000f> )

       


본문의 속성을 지정하는 <body> 태그 사용의 예


<html>

       <head> 

              <title> 속성 사용의 예 </title>

       </head>

        <body backgrond="black" text="white">

                 html 문서 속성의 사용의 예<br>

                 흰색(="ffffff")를 사용합니다.

       </body>

</html>         

 

728x90
728x90


HTML 개요


웹 프로그래밍을 위해서는 HTML의 이해와 사용법을 반드시 알아야 한다. 그 이유는 웹 프로그래밍의 출력 결과가 HTML로 표현되기 떄문이다. 


HTML은 하이퍼텍스트라고 한다. 제목, 단락, 목록 등 구조적 의미를 나타내고 있고 링크,인용, 그밖의 항목으로 구조적 문서를 만들 수 있는 방법을 제공한다.


HTML은 웹 페이지 콘텐츠 안의 < > 형태로 작성한다. 자바 스크립트와 분문과 그밖의 종목을 CCS , 스크립트를 포함하거나 불러 올수 있다.


오늘날 대부분 인터넷 웹페이진 HTML로 구성되어 있다고 해도 과언이 아니다.


HTML 문서는 <html> </html>로 형태로 <head> </head> : 머리말  , <body> </body> : 본문 으로 구성되어 있다.


<a herf="http://www.naver.com">네이버</a>로 연결합니다.

<img src="./image/picture.jpg">


HTML 태그에서는 대문자와 소문의 구분이 없다.

<HEAD> , <head> ,<Head>는 모두 같은 태그로 인식된다.


HTML 문서 작성에서 주의할 사항은 공백문자 (space)이다.


공백 문자가 여러개 있더라도 하나의 공백문자로 인식된다. 또한 탭(Tab) , 엔터(enter)도 하나의 공백 문자로 인식한다.



728x90
728x90

리눅스 6버전 CLI 모드 진입 방법


CLI 모드 진입시 id:5:initdefault:  으로 되어 있다면 id:3:initdefault: 으로 변경후 리부팅하면 CLI 모드로 화면 출력된다.


# vi /etc/inittab



# inittab is only used by upstart for the default runlevel.

#

# ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.

#

# System initialization is started by /etc/init/rcS.conf

#

# Individual runlevels are started by /etc/init/rc.conf

#

# Ctrl-Alt-Delete is handled by /etc/init/control-alt-delete.conf

#

# Terminal gettys are handled by /etc/init/tty.conf and /etc/init/serial.conf,

# with configuration in /etc/sysconfig/init.

#

# For information on how to write upstart event handlers, or how

# upstart works, see init(5), init(8), and initctl(8).

#

# Default runlevel. The runlevels used are:

#   0 - halt (Do NOT set initdefault to this)

#   1 - Single user mode

#   2 - Multiuser, without NFS (The same as 3, if you do not have networking)

#   3 - Full multiuser mode

#   4 - unused

#   5 - X11

#   6 - reboot (Do NOT set initdefault to this)

#

id:3:initdefault:



728x90
728x90
하나님의 은혜를 기대하고 선포하라. 매일 아침에 집을 나서기전에 이렇게 말하라. "하나님 아버지 제게 은혜를 주셔서 감사합니다. 하나님의 은혜로 기회의 문이 열리고 있습니다. 성공이 제게 다가오고 남들이 자청해서 저른 도울 줄 믿습니다."  그리고 나서 자신있게 밖으로 나가 좋은 일이 일어나간 기대하며 살라. 좀 처럼 열리지 않는 기회의 문이 특별히 우리를 위해 열리길 기대하라

728x90
728x90
우리가 해야 할 일은 바로 좋은 일을 기대 하는것이다. 마음의 나침반을 올바른 방향에 맞추라. 패배자의 마음을 갖고 승리자의 삶을 기대 하는것은 어불성설이다. 부정적인 생각으로 꽉 차 있으면서 왜 인생이 풀리지 않냐고 의아해 하는 것만큼 어리석은 일도 없다.
728x90

+ Recent posts