서버 #17

SERVER 2019. 12. 8. 23:43

* 데이터베이스 서버

데이터베이스란 대용량 데이터 집합을 체계적으로 구성한 것이다.

목적은 여러 명의 공유이다.

데이터베이스 관리시스템 DBMS를 통해 데이터베이스를 관리한다.

 

* 관계형 데이터베이스

dbms는 계층형, 망형, 관계형, 객체지향형, 객체관계형으로 나뉜다.

관계형이 가장 많이 차지하고 있음.

RDBMS = 관계형 DBMS인 sql server, oracle server를 말함.

 

* sql server 개요

sql은 마이크로소프트의 것이다.

enterprise > standard > express

에디션별로 cpu 사용 개수나 ram 사용량, db 크기 등을 제한한다.

 

* sql server 구축

sql 서버를 다운로드 받는다

express를 설치하고 미디어 다운로드 -> express core 설치함.

설치센터에서 새 sql server 독립 실행형 설치

사용조건에 동의.

제품 업데이트에서 체크 해제함.

방화벽 등 경고가 떠도 그냥 진행함.

기능 선택은 기본 선택을 그냥 두고 연결한다.

기본 선택된 것은 인스턴스 기능에 db 엔진서비스, sql 서버 복제

공유기능에 sql 클라이언트 연결 sdk이다.

인스턴스 구성에서 기본 인스턴스 선택하고 다음

서버 구성도 다음

서버 구성 시에 혼합 모드로 한 후에 비밀번호를 정하자.

 

인증 모드에서 windows 인증모드는 윈도우즈 사용자만 sql 서버에 접근할 수 있음.

다른 사람은 별도로 지정해줘야함.

혼합 모드는 윈도우즈 사용자 아니라도 sql server 사용할 수 있는 사용자 만들 수 있음.

보안에 더 좋은건 윈도우즈 인증모드임.

 

그 이후에 설치센터에서 sql server 관리도구 설치 누르면

SSMS를 설치해줘야함.

 

로그인 시에 데이터베이스 엔진, 윈도우즈 인증

윈도우즈 인증 접속 시에 윈도우즈 사용자 권한으로 접속하는거다.

 

* sql 서버와 응용프로그램의 연결

비주얼 스튜디오 커뮤니티 버전을 설치하자

사용자 지정 설치 -> microsoft web developer tools 설치, 재부팅

시작화면에서 나중에 로그인

 

시작에서 sql server 구성 관리자 들어감

sql server 네트워크 구성 -> 프로토콜에서 tcp/ip 사용

sql server 서비스에서 sql server에 다시 시작함.

db 서버 컴퓨터에서 방화벽에 인바운드 1433 포트를 열어준다.

 

커뮤니티 열고 새로만들기에서 웹 -> asp.net 열자

우측에서 웹사이트 -> 추가 -> 웹 폼 만들자

웹폼 옆에 도구상자 열어서 데이터 - sqldatasource 클릭

아래 디자인에서 sqldatasource 클릭하고 데이터 소스 구성 클릭

새연결 클릭 -> ms sql sever 

서버 이름 넣고 인증에 sql server 인증해서 sa로 로그인함.

데이터베이스 이름은 아까 만든 데이터베이스 아무거나 선택

 

이때 에러가 나타난다.

* sql server에 연결을 설정하는 중에 네트워크 관련 또는 인스턴스 관련 오류가 발생했습니다

이건 SQL SERVER 구성 관리자 다시 들어가서

tcp/ip 쪽에 속성->ip주소에서 IPAII TCP동적포트를 1433으로 바꿔주자.

다시 연결하면 됨.

 

다음다음 누르고 테이블 이름 선택 후에 *을 눌러보자.

select * from 테이블이라고 입력하는 것과 동일함.

여기서 확인 누르면 디자인 화면으로 나와짐.

개발용 pc 개발툴에서 db 연결자를 통해 db 서버의 테이블까지 접근한 상태가 됨.

 

* asp 닷넷에서 db 불러와서 브라우저로 띄우기

(개발툴하고 외부 db 간 연결 테스트이다)

 

도구상자 - 데이터 - listview 더블클릭

데이터소스 선택에서 sqldatasource1 을 선택 -> listview 구성

표 - 전문가 - 페이징사용(페이지) 해보자

파일 - 모두 저장 후에 브라우저에서 보기를 클릭

웹 사이트에서 db 정보를 볼 수 있다.

 

 

* oracle server 구축

sql 서버는 윈도우즈용 제품만 있지만 오라클은 윈도우즈, 유닉스, 리눅스용이 다 있다.

테스트는 oracle database express 11g r2를 사용하자.

 

enterprise > standard > standard one > express

에디션들은 cpu 차이와 비용 차이만 있다.

db툴은 oracle 11g xe를 설치함.

 

sql plus를 열어보자

id: system pw: 생성한 비번

데이터베이스 만들어줄 때 ORA-01119 에러가 나는 것은 C 드라이브같은

드라이브 바로 아래가 아닌 폴더 아래 .dbf 파일을 만들면 잘 만들어짐. 

 

* 유저 만들 때

12c 이상에서는 유저 만들때 user1이 아니라 c##user1로 해줘야한다.

create c##user1 identified by 1234;

grant connect, resource to c##user1;

 

* 테이블 만들 때

권한땜에 막혀서 테이블이 안만들어진다.

alter user c##user1 dafault tablespace users quota unlimited on users

대충 system에서 유저 권한 풀어주고 다시하면 테이블 만들어짐.

insert로 넣어주고 exit 또는 commit 종료해주자. 위에 x로 종료하면 롤백되서 데이터 날아감.

 

* oracle 서버와 응용프로그램의 연결

아까와 동일한 방식이다.

비주얼 스튜디오 express와 db 연결 시도를 해보자.

db 연결자 역할을 하는 oracle developer tools를 

비주얼 스튜디오가 있는 개발용 pc에 설치해야함.

기본값으로 두고 설치함.

 

ins-50013 에러가 뜨고 비주얼 스튜디오를 설치하라고함.

쩝.. 이거땜에 3시간 까먹었네.

난 비주얼스튜디오 2019 express 사용하는데 121010버전 설치해서 해결함.

여기서 설치된 곳에서 tnsnames.ora 파일 복사 후에 앞에 있는 admin 폴더로 이동.

메모장 열어서 변경.

 

<data source alias> -> abc

<hostname or ip> -> db서버 ip

<port> -> 1521

<data service name> -> abc

접근하려는 db서버 방화벽에 1521 등록.

 

똑같이 asp 닷넷 열어서 디자인 -> sqldatasource 연결해서

sql server가 아닌 oracle 데이터베이스로 연결

서버이름 abc에 사용자이름은 system 계정으로 들어가보자

 

테이블 또는 뷰의 열 지정 -> 테이블 지정 -> * 선택

메뉴에서 모두저장 -> 파일에서 브라우저로 열어본다.

'SERVER' 카테고리의 다른 글

서버 #19  (0) 2019.12.08
서버 #18  (0) 2019.12.08
서버 #16  (0) 2019.12.08
서버 #15  (0) 2019.12.07
서버 #14  (0) 2019.12.07
블로그 이미지

ryancha9

https://blog.naver.com/7246lsy

,