웹서버를 리눅스에 구축하기 위해서
마지막으로 웹사이트의 정보를 저장할 DB를 설치해야한다.
여러 데이터베이스 프로그램이 있지만 mariaDB를 사용할 것이다.
먼저 이전 과정과 마찬가지로 방화벽을 먼저 설정해준다.
터미널에서 루트 권한으로 접속
방화벽 설정을 위해 작업디렉토리를 바꿔주고
mysql.xml 파일을 복사하여 mariadb.xml 파일을 생성한 후
mariadb.xml 파일을 수정한다.
cd /usr/lib/firewalld/services/
cp mysql.xml mariadb.xml
vi mariadb.xml
port가 default인 3306인 것만 확인하고 나와도 상관은 없지만
mariaDB라는 표시를 위해서 short와 description을 수정해준다.
방화벽에 등록하고 재로딩한다.
방화벽 설정이 끝나면 mariadb를 다운로드 받아준다.
yum -y install mariadb
yum -y install mariadb-server
mariadb를 시작시킨다.
systemctl start mariadb
mysql 명령어로 접속
mariaDB를 종료하고 (exit 명령어)
루트 권한에서 나온후
master 계정에서는 mysql 명령어로 접속 불가능
=> mysql -u root 로 접속 가능
아직 암호 설정을 하지 않아서 암호 입력없이 바로 접근이 가능하다.
DB 보호를 위해 mariadb의 root 계정의 암호를 설정해준다.
mysqladmin -u root password '설정할비밀번호'
mysql -u root => 접속 불가(비밀번호 설정되있어서)
mysql -u root -p => 암호입력 후 접속
추가적으로 지금 상태에서는 부팅시마다 mariadb를 켜줘야하는 불편함이 있으므로
자동으로 시작되도록 설정해준다.
루트 계정에서
systemctl enable mariadb
reboot
재부팅해서 확인
따로 mariadb 시작 안하고도 바로 접속 가능
mariadb에서 한글(다국어) 사용을 위해 인코딩 체크를 해준다.
show variables like 'c%';
실제 확인을 위해 데이터베이스와 테이블을 만들고 데이터를 넣어본다.
create database project;
use project;
create table testtbl ( col varchar(20) );
select * from testtbl;
insert into testtbl values ( 'aaa' );
select * from testtbl;
insert into testtbl values ( '한글' ); => 삽입 실패
drop table testtbl;
한글(다국어) 설정을 위해 root 권한으로 접속한 후
다음 파일들을 수정해준다.
vi /etc/my.cnf.d/client.cnf
vi /etc/my.cnf.d/mysql-clients.cnf
vi /etc/my.cnf.d/mariadb-server.cnf
collation-server=utf8_general_ci
init-connect='SET NAMES utf8'
character-set-server=utf8
설정을 바꿔준후 다시 이전과 같은 방식으로 한글 입력을 테스트 해준다.
이전 설정으로 만들어진 database(table)는 삭제하고 다시 만들어서 테스트한다.
한글도 입력 가능해짐
'Linux > Linux 서버' 카테고리의 다른 글
리눅스에 웹서버 구축하기 - 6-1. mariaDB mysqldump 사용해서 table 복사하기 (0) | 2021.02.17 |
---|---|
리눅스에 웹서버 구축하기 - 5. tomcat 설치 (0) | 2021.02.17 |
리눅스에 웹서버 구축하기 - 4. ftp (0) | 2021.02.16 |
리눅스에 웹서버 구축하기 - 3. CentOS 초기설정 (0) | 2021.02.09 |
리눅스에 웹서버 구축하기 - 2. CentOS 설치하기 (0) | 2021.02.09 |