1. yum을 통한 git 설치


[root@localhost smoh]# yum install git

[root@localhost smoh]# git --version



2. Git 설정.

[root@localhost smoh]# mkdir myWeb
[root@localhost smoh]# cd myWeb
[root@localhost myWeb]# git init
[root@localhost myWeb]# git remote add myweb (저장소주소)
[root@localhost myWeb]# git remote -v


3. pull

[root@localhost myWeb]# git pull myweb master


반응형

0. 시작하기 앞서서


순수히 공부를위해, 서비스할 목적 없이 만들어진 서버 환경입니다.

따라서 방화벽과 SELinux는 모두 비활성화 된 상태입니다.

만약 문제가 발생할경우 설정을 확인해 주시기 바랍니다.



1. Apache 설치


[root@localhost smoh]# yum install httpd



2. pip 설치

[root@localhost smoh]# yum install epel-release
[root@localhost smoh]# yum install python-pip
[root@localhost smoh]# pip install --upgrade pip


3. Django 설치

[root@localhost smoh]# pip install django


4. mod_wsgi 설치

[root@localhost smoh]# yum install mod_wsgi


5. Django 프로젝트 생성


(프로젝트를 생성하고 싶은 경로로 이동.)

[root@localhost smoh]# django-admin startproject demo



6. Apache 설정


6.1. httpd.conf 설정파일 확인

[root@localhost smoh]# vi /etc/httpd/conf/httpd.conf

Supplemental configuration 항목이 IncludeOptional conf.g/*conf인지 확인.

6.2. 설정파일 생성 (이름은 원하는대로 설정.)

[root@localhost smoh]# vi /etc/httpd/conf.d/django.conf

(내용은 아래와 같이 생성)

<VirtualHost *:80>

        WSGIScriptAlias / /home/smoh/demo/demo/wsgi.py

        <Directory /home/smoh/demo/demo>

                <Files wsgi.py>

                       Order deny,allow

                       Allow from all

Require all granted

                </Files>

        </Directory>

</VirtualHost>


6.3. 권한설정

[smoh@localhost /]$ sudo chmod 711 /home/smoh



7. wsgi.py 파일 수정


[root@localhost demo]# vi /home/smoh/demo/demo/wsgi.py

import os, sys

path = '/home/smoh/demo'
if path not in sys.path:
    sys.path.append(path)

from django.core.wsgi import get_wsgi_application

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "demo.settings")

application = get_wsgi_application()


8. Apache 재시작 및 자동시작 등록


[root@localhost demo]# systemctl restart httpd.service

[root@localhost demo]# chkconfig httpd on


반응형


1. pgcrypto 설치


[root@localhost smoh]# yum install postgresql-contrib



2. 암호화


CREATE EXTENSION pgcrypto;

SELECT CRYPT('12345', GEN_SALT('md5'));



3. 검증

SELECT id FROM members WHERE id = 'id01' AND password = CRYPT('12345', password);


4. 전체 예시


CREATE EXTENSION pgcrypto;


DROP TABLE IF EXISTS members; 


CREATE TABLE members (

  id  TEXT  PRIMARY KEY,

  password TEXT

);


INSERT INTO members(id, password) VALUES ('id01', CRYPT('12345', GEN_SALT('md5')));

SELECT * FROM members;


--SELECT id FROM members WHERE id = 'id01' AND password = CRYPT('12345', password);

반응형

1. 새 테이블에 기존 테이블 상속


CREATE TABLE computers (

  model  TEXT PRIMARY KEY,

  price  money

)INHERITS(brands);



2. 전체 예시


DROP TABLE IF EXISTS computers;

DROP TABLE IF EXISTS brands;


CREATE TABLE brands (

  name  VARCHAR(100) PRIMARY KEY,

  nation TEXT

);

CREATE TABLE computers (

  model  TEXT PRIMARY KEY,

  price  money

)INHERITS(brands);

INSERT INTO computers(model, price, name, nation) VALUES('Series9', '1300000', 'Samsung', 'Korea');

INSERT INTO computers(model, price, name, nation) VALUES('Series5', '800000', 'Samsung', 'Korea');

INSERT INTO computers(model, price, name, nation) VALUES('MacBook Pro', '1800000', 'Apple', 'U.S.A.');


SELECT * FROM computers;



3. 참고사항


부모 테이블의 check 제약 조건과 NOT NULL 제약은 자식 테이블에 자동으로 상속된다. 

부모 테이블의 Unique 제약 조건 기본 키, 외래 키 제약 조건은 상속되지 않는다.

SELECT * FROM brands; 를 실행해보자.

반응형

'Programming > Databse' 카테고리의 다른 글

[Database] Stored Procedure  (0) 2017.06.26
[PostgreSql] 암호화(Encryption)  (0) 2017.06.15
[PostgreSql] 트랜잭션(Transaction)  (0) 2017.06.15
[PostgreSql] 제약조건(Constraint) 설정, 제거  (0) 2017.06.15
[PostgreSql] 뷰(View)  (0) 2017.06.15

1. 트랜잭션 설정.


BEGIN;

UPDATE accounts SET balance = balance - '1000000' WHERE name = 'Alice';

SAVEPOINT save_location;

UPDATE accounts SET balance = balance + '1000000' WHERE name = 'Bob';

ROLLBACK TO save_location;

UPDATE accounts SET balance = balance + '1000000' WHERE name = 'Sam';

COMMIT;



2. 전체 sql



DROP TABLE IF EXISTS accounts;


CREATE TABLE accounts (

  name VARCHAR(20) PRIMARY KEY,

  balance MONEY

);


INSERT INTO accounts VALUES('Alice', '5000000');

INSERT INTO accounts VALUES('Bob', '500000');

INSERT INTO accounts VALUES('Sam', '1000000');


BEGIN;

UPDATE accounts SET balance = balance - '1000000' WHERE name = 'Alice';

SAVEPOINT save_location;

UPDATE accounts SET balance = balance + '1000000' WHERE name = 'Bob';

ROLLBACK TO save_location;

UPDATE accounts SET balance = balance + '1000000' WHERE name = 'Sam';

COMMIT;


SELECT * FROM accounts;


반응형

'Programming > Databse' 카테고리의 다른 글

[PostgreSql] 암호화(Encryption)  (0) 2017.06.15
[PostgreSql] 상속(Inheritance)  (0) 2017.06.15
[PostgreSql] 제약조건(Constraint) 설정, 제거  (0) 2017.06.15
[PostgreSql] 뷰(View)  (0) 2017.06.15
[PostgreSql] 기본 쿼리  (0) 2017.06.15

1. 제약조건 추가.


ALTER TABLE cities ADD CONSTRAINT name PRIMARY KEY(name);

ALTER TABLE weather ADD CONSTRAINT city FOREIGN KEY(city) REFERENCES cities(name);



2. 제약조건 삭제.


ALTER TABLE weather DROP CONSTRAINT city;

ALTER TABLE cities DROP CONSTRAINT name;

반응형

'Programming > Databse' 카테고리의 다른 글

[PostgreSql] 상속(Inheritance)  (0) 2017.06.15
[PostgreSql] 트랜잭션(Transaction)  (0) 2017.06.15
[PostgreSql] 뷰(View)  (0) 2017.06.15
[PostgreSql] 기본 쿼리  (0) 2017.06.15
[PostgreSql] 유저 및 데이터베이스 생성  (0) 2017.06.15

1. 뷰 삭제


DROP VIEW myview;



2. 뷰 생성


CREATE VIEW myview AS

  SELECT city, temp_lo, temp_hi, prcp, date, location

  FROM weather, cities

  WHERE city = name;



3. 뷰 조회


SELECT * from myview;


반응형

1. 테이블 생성


CREATE TABLE weather ( city  varchar(80), temp_lo  int, temp_hi  int, prcp  real, date  date );

CREATE TABLE cities ( name  varchar(80), location  point );



2. 데이터 삽입


INSERT INTO weather VALUES('Seoul', 17, 29, 0.75, '2017-06-15');

INSERT INTO cities VALUES('Seoul', '(37.0, 126.0)');

INSERT INTO weather VALUES('Busan', 22, 31, 0.85, '2017-06-15');

INSERT INTO cities VALUES('Busan', '(35.0, 128.0)');


3. 데이터 조회


SELECT * FROM weather;

SELECT * FROM cities;



4. 데이터 수정


UPDATE weather SET temp_hi = temp_hi +2, temp_lo = temp_lo -2 WHERE date > '2000-01-01';



5. 데이터 삭제


DELETE FROM weather WHERE city ='Busan';

DELETE FROM cities WHERE name = 'Busan';



6.  테이블 삭제


DROP TABLE weather, cities CASCADE;

반응형
1. 계정 생성

[smoh@localhost /]$ sudo su - postgres
-bash-4.2$ psql
postgres=# CREATE USER smoh WITH PASSWORD '(your_password)';


2. 계정 확인 

postgres=# SELECT usename FROM pg_catalog.pg_user;


3. 권한 추가 (원하는 기능을 골라서 추가.)

postgres=# ALTER USER smoh WITH SUPERUSER;
postgres=# ALTER USER smoh WITH CREATEDB;
postgres=# ALTER USER smoh WITH CREATEROLE;
postgres=# ALTER USER smoh WITH REPLICATION;
(모두 추가하면 기본 유저인 postgres와 같은 권한을 갖게 됨)


4. DB 추가

postgres=# CREATE DATABASE myTable OWNER smoh;


5. DB 확인

postgres=# \list


반응형


1. 시스템 업데이트


[root@localhost smoh]# yum -y update



2. PostgreSql 설치


[root@localhost smoh]# yum list postgresql*

[root@localhost smoh]# yum install postgresql-server



3. 설치 확인


[smoh@localhost ~]$ postgres -V



4. PostgreSql초기화


[root@localhost /]# postgresql-setup initdb



5. PostgreSql Start


[root@localhost /]# systemctl enable postgresql.service
[root@localhost /]# systemctl start postgresql.service


6. 동작확인


[root@localhost data]# systemctl status postgresql


















반응형

+ Recent posts