워드프레스 설치 전 데이터베이스 준비

워드프레스 설치

준비하기

데이터베이스 설정

터미널 접속

$ ssh -p [port number] [user]@[hostname]

[user]@[hostname]’s password:
[port number] SSH 포트 설정한 것
[user] 시놀로지 관리자 아이디
[hostname] 연결한 도메인 주소 혹은 아이피

데이터베이스를 실행시켜보자. MariaDB의 뿌리가 MySQL이기 때문에 실행파일이 mysql이다. 실행파일이 있는 경로는 다음과 같다.

/volume1/@appstore/MariaDB10/usr/local/mariadb10/bin/mysql

무척이나 복잡한 경로이기에 아래와 같은 경로에 심볼릭 링크 파일이 들어가 있으므로 아래 경로를 이용하면 더 편하다.

/usr/local/mariadb10/bin
$ cd /usr/local/mariadb10/bin
$ ./mysql -u root -p mysql
Enter password:

Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 365
Server version: 10.3.21-MariaDB Source distribution
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [mysql]>

이제 간단히 데이터베이스를 살펴보자. 3개의 데이터베이스가 이미 생성되어 있음을 확인할 수 있다.

MariaDB [mysql]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
3 rows in set (0.000 sec)
MariaDB [mysql]>

이제 간단히 사용자를 살펴보자. root 사용자만이 생성되어 있을 것이다.

MariaDB [mysql]> select user, host from user;
+-----------+-----------+
| user      | host      |
+-----------+-----------+
| root      | 127.0.0.1 |
| root      | ::1       |
| root      | localhost |
+-----------+-----------+
3 rows in set (0.000 sec)
MariaDB [mysql]>

이제 워드프레스에서 사용할 데이터베이스와 이용자를 등록해보자. 비밀번호는 특수문자를 포함하여 10자 이상으로 입력해야 한다. 그렇지 않으면 다음과 같은 오류 메시지만 보인다.

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements: [Minimal password length 10, Include special characters]

아이디는 test로, 비밀번호는 more_than_10_letters로 하여 이용자를 생성하고, db_test 라는 데이터베이스도 생성한다.

MariaDB [mysql]> create user 'test'@'localhost' identified by 'more_than_10_letters';
Query OK, 0 rows affected (0.041 sec)

MariaDB [mysql]> create database db_test;
Query OK, 1 row affected (0.001 sec)

이제 test 이용자에게 db_test 에 대한 모든 권한을 준다.

MariaDB [mysql]> grant all privileges on db_test.* to 'test'@'localhost' identified by 'more_than_10_letters';
Query OK, 0 rows affected (0.042 sec)

MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.002 sec)

이제 생성한 데이터베이스와 이용자를 확인해보자.

MariaDB [mysql]> show databases;
+--------------------+
| Database           |
+--------------------+
| db_test            |
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
4 rows in set (0.001 sec)

MariaDB [mysql]> select user, host from user;
+-----------+-----------+
| user      | host      |
+-----------+-----------+
| root      | 127.0.0.1 |
| root      | ::1       |
| root      | localhost |
| test      | localhost |
+-----------+-----------+
4 rows in set (0.000 sec)

이렇게 하면 기본적으로 워드프레스 설치를 위한 데이터베이스 작업이 끝난다.

워드프레스 설치 시 데이터베이스명, 이용자명, 비밀번호, 호스트명에 각가 다음과 같이 입력하면 된다. (wp-config.php 기준)

DB_NAME: db_test
DB_USER: test
DB_PASSWORD: more_than_10_letters
DB_HOST: localhost:/run/mysqld/mysqld10.sock

여기서 중요한 점은 호스트명이 단순 localhost가 아니라는 점이다. 반드시 위와 같이 입력하도록 한다.

사실 대부분의 일반 사용자들은 워드프레스 설치가 끝난 다음에 다시 데이터베이스 자체를 들여다볼 기회가 별로 없을 것이다. 나는 phpMyAdmin 을 설치하지 않았기 때문에, 데이터베이스를 직접 조작하기 위해서는 터미널로 접속 후 직접 명령어를 입력하거나, 데이터베이스 클라이언트 프로그램을 사용하여 외부에서 데이터베이스에 접근해야 한다.

현재 사용 중인 코딩 앱은 Coda 2 인데, 이 앱은 터미널, 데이터베이스 클라이언트가 포함되어 있다. 앱 자체가 특별한 장점이 있는 것은 아니지만, 당시 처음 구매할 때 타의 추종을 불허하는 이쁨?이 장점이면 장점이었다고나 할까… 버전 1을 구매한 지 꽤 오래되었는데 무료로 업그레이드를 계속 받아와서 현재까지 사용 중이다. 1에서 2로 업그레이드 할 때 약간의 비용이 들었는지는 너무 오래되서 기억이 나지 않는데, 아마 무료 내지는 매우 저렴한 가격이지 않나 생각한다.

어찌 되었든, 외부에서 데이터베이스에 접근하기 위해서는 추가 설정이 필요하다. 앞서 이용자에게 데이터베이스에 대한 권한을 주는 명령을 실행하였는데, 같은 명령어에서 localhost를 %로 바꾸어서 실행해주면 된다. 또한 DSM에서 MariaDB 앱을 실행시켜 TCP/IP 접속을 허용하도록 선택하고 포트 번호를 지정해 준다.

MariaDB [mysql]> grant all privileges on db_test.* to 'test'@'%' identified by 'more_than_10_letters';
Query OK, 0 rows affected (0.041 sec)
MariaDB [mysql]> select user, host from user;
+-----------+-----------+
| user      | host      |
+-----------+-----------+
| test      | %         |
| root      | 127.0.0.1 |
| root      | ::1       |
| root      | localhost |
| test      | localhost |
+-----------+-----------+
5 rows in set (0.000 sec)

이렇게 하면 test 이용자는 외부 클라이언트를 통하여 db_test 에 접근할 수 있게 된다.

(서버 이전 준비 중이기 때문에 생각 나는대로 막 써놓는 중. 서버 이전 후 워드프레스 테마도 바꿀 예정이라 추후 내용도 다듬고 테마에 맞게 수정할 예정)

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.