[쿠버네티스 4주차 1/12] SQL & 워드프레스 설치

신현식·2023년 1월 12일
0

구름_Linux

목록 보기
16/22
post-thumbnail

데이터베이스 관련 SQL

데이터베이스 목록 보기
SHOW DATABASES;

데이터베이스 생성
CREATE DATABASE 이름;

데이터베이스 삭제
DROP DATABASE 이름;

데이터베이스 사용
USE 이름;

테이블 관련 SQL

SHOW TABLES;

CREATE TABLE 이름 (스펙........)

explain 테이블이름
describe
desc

DROP TABLE 테이블이름

ALTER TABLE 테이블이름 옵션~~
예: ALTER TABLE [테이블이름] ADD [컬럼명][타입]

ALTER TABLE member ADD COLUMN memberidx INT;

데이터 형의 종류

VARCHAR(n) : 가변 길이 문자열
CHAR(n) : 고정 길이 문자열
INT : 정수형 숫자
FLOAT : 실수형 숫자
DATE : 날짜를 저장함
TIME : 시간을 저장함

레코드 삽입/삭제/수정
insert into [태이블이름] values (값1, 값2,.....);

update [테이블이름] set [필드이름1]=[수정값],[필드이름2]=[수정값].... where <필터링 조건>;

delete from <table이름> where <필터링 조건>

delete from member where id='hong';

테이블 조회

SELECT 필드이름1, 필드이름2,....... FROM 테이블 이름 WHERE 조건;

SELECT * FROM <테이블이름>

웹 서버(웹을 서비스하는 컴퓨터)

3계층 구조 : 클라이언트 -> 프론트엔드 - 백엔드 - DB
= 클라이언트 -> Web(만든 서비스 클라이언트에게 전달) - Was(정적,동적 서비스 만듬) - DB
요즘위 모덴 웹들은 서비스를 만들지 않고 api 응답만 함

여기서 만들 웹페이지 구조

LAMP

  • L = LINUX

  • A = APACHE -> 요즘은 nginx로 바뀌는 추세, 웹 서비스 데몬이라 보면 됨

  • M = MARIADB

  • P = PHP ->
    -> 모두 오픈소스이라 무료, 쉽고 강력한 웹페이지 만들기 가능, 예전에 가장 대중화되었던 것들과 PHP로 된 웹 프레임워크가 많음

  • 클라이언트와 웹은 통신 프로토콜 http/80로 통신

<Apache 웹 서버 설치 및 접속>

yum -y install httpd
systemctl start httpd
systemctl enable httpd
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent
firewall-cmd --reload

  • Apache 기본 홈디렉터리 : /var/www/html -> index.html(기본 웹페이지를 이것으로 만듬)
  • Apache 웹 서버 설정 파일 : /etc/httpd/conf 디렉터리에 존재 httpd.conf
    서버의 모든 ip가 동작하는 포트 설정

vi /etc/httpd/conf/httpd.conf
:set nu 숫자값 설정

  • 80번 포트를 통해서 통신한다는 의미
  • cat /etc/passwd를 보면 apache라는 로그인 안되는 시스템 계정이 있는데 httpd라는 Apache 웹 서버 프로세스를 구동할 사용자와 그룹 지정
  • 특정 경로에 대한 지시어의 그룹, 디렉터리 뒤에 '/'는 특정 지시어가 적용될 디렉터리를 의미
    -> AllowOverride : .htaccess 파일에 포함된 설정항목의 사용 여부를 결정, All로 바꿀 시 사용하겠다는 의미
    -> Require : 인증된 사용자가 권한을 부여받았는지 확인
    ※ Require all granted : 무조건 엑세스 차단
    ※ Require all denied : 무조건 엑세스 허용
  • 웹 서버에 접속할 때 기본적으로 접근하는 디렉터리
  • /var/log/httpd 를 보면 access_log와 error_log를 확인 할 수 있다. 웹 로그를 저장하는 설정값
  • 서버에 접근하는 클라이언트에게 오류 발생시 지정한 http 응답코드를 보내도록 지정, http 상태코드를 검색!

워드프레스 실습

기본 리눅스 리포지토리 -> php5

워드프레스 -> php7이상 필요
yum -y install epel-release

remi-repository 설치
https://rpms.remirepo.net/enterprise/remi-release-7.rpm --no-check-certificate
rpm -Uvh remi-release-7.rpm

yum -y install httpd
yum install -y yum-utils
yum-config-manager --enable remi-php73
yum install php -y

php -v 버전확인

systemctl restart httpd
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent
firewall-cmd --reload

echo "" > /var/www/html/phpinfo.php
해서 브라우저에서 IP주소//phpinfo.php를 하면 php버전이 7.3.33임을 확인할 수 있다.
확인했으면 파일을 지우는것이 보안상 좋다
rmm -rf /var/www/html/phpinfo.php

마리아디비 설치
yum install -y mariadb mariadb-server
systemctl start mariadb
systemctl enable mariadb
mysqp_secure_installation

yum install php-mysql -y

mysql 실행
mysql -u root -p

create database wordpress; 데이터베이스 만들기
create user wordpress@localhost identified by "qwer1234"; 계정 만들기
GRANT ALL ON wordpress.* TO wordpress@localhost IDENTIFIED BY '1234'; 계정에 권한 설정, 해당 데이터베이스의 모든 테이블에 대한 권한을 가진 계졍을 만들고비번은 이것으로 해서 준다.
FLUSH PRIVILEGES; 설정 안된 것디비 재갱신

워드프레스 설치
cd /tmp
wget http://wordpress.org/latest.tar.gz 위드프레스 설치
tar xvzf latest.tar.gz -C /var/www/html 압축해제
chown -R apache /var/www/html/wordpress 아파치 권한 부여, 소유자를 바꿔야지 작업이 가능해짐

systemctl restart httpd 재시작해주고 내 IP주소/wordpress를 하면 화면을 볼수 있다.

한국어로 설정하고 다음으로 간다.
내용을 확인하고 다음페이지로 간다.
만들때 지정했던 내용들을 적어주면 된다.
설치실행 해주면 된다.
사이트 제목, 사용자명, 비밀번호등 본인이 사용할 내용을 써주면 된다.
전 페이지에서 적었던 사용자명과 비밀번호가 잘 설정된 것을 확인할 수 있다.
로그인 해준다.
잘 로그인되어 사용할수있는 것을 볼 수 있다.

profile
전공 소개

0개의 댓글