Contents
1. MariaDB
1.1 MariaDB インストール
①インストール
1 |
# pacman -S mariadb |
➁MariaDBを設定する
1 |
# mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql |
➂mariadb.serviceを起動
1 2 3 |
# systemctl start mariadb.service # systemctl enable mariadb.service Created symlink /etc/systemd/system/multi-user.target.wants/mariadb.service → /usr/lib/systemd/system/mariadb.service. |
④MariaDBセキュリティ設定
MariaDBサーバーのrootユーザーのパスワードを変更しておきます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
# mysql_secure_installation /usr/bin/mysql_secure_installation: Deprecated program name. It will be removed in a future release, use 'mariadb-secure-installation' instead NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MariaDB to secure it, we'll need the current password for the root user. If you've just installed MariaDB, and haven't set the root password yet, you should just press enter here. Enter current password for root (enter for none): OK, successfully used password, moving on... Setting the root password or using the unix_socket ensures that nobody can log into the MariaDB root user without the proper authorisation. You already have your root account protected, so you can safely answer 'n'. Switch to unix_socket authentication [Y/n] y Enabled successfully! Reloading privilege tables.. ... Success! You already have your root account protected, so you can safely answer 'n'. Change the root password? [Y/n] y New password: Re-enter new password: Password updated successfully! Reloading privilege tables.. ... Success! By default, a MariaDB installation has an anonymous user, allowing anyone to log into MariaDB without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. Remove anonymous users? [Y/n] y ... Success! Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. Disallow root login remotely? [Y/n] y ... Success! By default, MariaDB comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. Remove test database and access to it? [Y/n] y - Dropping test database... ... Success! - Removing privileges on test database... ... Success! Reloading the privilege tables will ensure that all changes made so far will take effect immediately. Reload privilege tables now? [Y/n] y ... Success! Cleaning up... All done! If you've completed all of the above steps, your MariaDB installation should now be secure. Thanks for using MariaDB! |
⑤初期設定
1 2 3 4 |
# vim /etc/my.cnf # 12行目 追記 [mysqld] character-set-server=utf8 |
⑥MariaDBサービスの再起動
1 |
# systemctl start mariadb.service |
⑦サービスの状態を確認し、実際に稼働していることを確認する
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# systemctl status mariadb ● mariadb.service - MariaDB 11.2.2 database server Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; preset: disabled) Active: active (running) since Fri 2023-12-22 16:24:24 JST; 13min ago Docs: man:mariadbd(8) https://mariadb.com/kb/en/library/systemd/ Main PID: 71051 (mariadbd) Status: "Taking your SQL requests now..." Tasks: 8 (limit: 4631) Memory: 131.0M (peak: 138.6M) CPU: 378ms CGroup: /system.slice/mariadb.service mq71051 /usr/bin/mariadbd Dec 22 16:24:24 Lepard mariadbd[71051]: 2023-12-22 16:24:24 0 [Note] InnoDB: log sequence number 46300; transaction id 14 Dec 22 16:24:24 Lepard mariadbd[71051]: 2023-12-22 16:24:24 0 [Note] Plugin 'wsrep-provider' is disabled. Dec 22 16:24:24 Lepard mariadbd[71051]: 2023-12-22 16:24:24 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool Dec 22 16:24:24 Lepard mariadbd[71051]: 2023-12-22 16:24:24 0 [Note] InnoDB: Buffer pool(s) load completed at 231222 16:24:24 Dec 22 16:24:24 Lepard mariadbd[71051]: 2023-12-22 16:24:24 0 [Note] Server socket created on IP: '0.0.0.0'. Dec 22 16:24:24 Lepard mariadbd[71051]: 2023-12-22 16:24:24 0 [Note] Server socket created on IP: '::'. Dec 22 16:24:24 Lepard mariadbd[71051]: 2023-12-22 16:24:24 0 [Note] mariadbd: Event Scheduler: Loaded 0 events Dec 22 16:24:24 Lepard mariadbd[71051]: 2023-12-22 16:24:24 0 [Note] /usr/bin/mariadbd: ready for connections. Dec 22 16:24:24 Lepard mariadbd[71051]: Version: '11.2.2-MariaDB' socket: '/run/mysqld/mysqld.sock' port: 3306 Arch Linux Dec 22 16:24:24 Lepard systemd[1]: Started MariaDB 11.2.2 database server. |
Active: active (running) サービスが稼働中であることを示します
⑧MariaDBのバージョン確認
1 2 |
# mariadb -V mariadb from 11.2.2-MariaDB, client 15.2 for Linux (x86_64) using readline 5.1 |
⑨ファイアウォールを有効にしている 且つ リモートから MariaDB を利用する場合はサービスの許可
1 2 |
# ufw allow mysql # ufw reload |
1.2 phpMyAdmin インストール
phpMyAdmin をインストールして、Web ブラウザ経由で MariaDB の操作ができるように設定
①インストール
1 |
# pacman -S phpmyadmin |
PHP の mysqli
拡張を有効にする必要があります。/etc/php/php.ini
を編集
1 2 3 4 5 6 7 8 |
# vim /etc/php/php.ini 319行目当たりに追加 open_basedir = /srv/http/:/var/www/:/home/:/tmp/:/var/tmp/:/var/cache/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps/ 931行目当たりコメント解除 extension=mysqli 936行目当たりコメント解除 extension=pdo_mysql |
phpmyadmin.confを新規作成
1 2 3 4 5 6 7 8 9 10 |
# vim /etc/httpd/conf/extra/phpmyadmin.conf 下記の内容を記述 Alias /phpmyadmin "/usr/share/webapps/phpMyAdmin" <Directory "/usr/share/webapps/phpMyAdmin"> DirectoryIndex index.php AllowOverride All Options FollowSymlinks Require all granted </Directory> |
httpd.conf編集
1 2 3 4 |
# vim /etc/httpd/conf/httpd.conf 最終行に追加 Include conf/extra/phpmyadmin.conf |
Apache再起動
1 |
# systemctl restart httpd |
②ブラウザで http://<IPアドレス>/phpMyAdmin にアクセスする
下記のログイン画面が表示されるので
Username : root
Password: MariaDBのセキュリティーインストールで設定したrootユーザーのパスワード
Log in クリック
下記phpMyAdminの設定画面が表示される
1.3 MariaDB データベース+ユーザー作成例
次にインストールするwordpress用ユーザー、パスワード、データベースを作成してみる
データベース : wp_db
ユーザー : wp_user
パスワード : ?WHxx333Yo
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# mysql -u root -p mysql: Deprecated program name. It will be removed in a future release, use '/usr/bin/mariadb' instead Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 3 Server version: 11.2.2-MariaDB Arch Linux 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 [(none)]> create database wp_db; Query OK, 1 row affected (0.010 sec) MariaDB [(none)]> create user 'wp_user'@'localhost' identified by '?WHxx333Yo'; Query OK, 0 rows affected (0.016 sec) MariaDB [(none)]> grant all on wp_db.* to 'wp_user'@'localhost'; Query OK, 0 rows affected (0.001 sec) MariaDB [(none)]> flush privileges; Query OK, 0 rows affected (0.001 sec) MariaDB [(none)]> exit Bye |
2. WordPress インストール
2.1 必要なライブラリーインストール
1 |
# pacman -S php-gd |
2.2 php.iniの編集
1 2 3 4 5 6 7 |
# vim /etc/php/php.ini 319行目当たりに/srv/[FQDN]を追加 open_basedir = /srv/[FQDN]/:/srv/http/:/var/www/:/home/:/tmp/:/var/tmp/:/var/cache/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps/ 925行目当たりコメント解除 extension=gd |
2.3 WordPressダウンロードとインストール
1 2 3 |
# cd /srv/[FQDN] # wget http://ja.wordpress.org/latest-ja.tar.gz # tar zxvf latest-ja.tar.gz |
2.4 設定ファイルの編集
1 2 |
# cd /srv/[FQDN]/wordpress/ # cp wp-config-sample.php wp-config.php |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# vim wp-config.php /** The name of the database for WordPress */ define( 'DB_NAME', 'wp_db' ); [データベース名] /** Database username */ define( 'DB_USER', 'wp_user' ); [ユーザー名] /** Database password */ define( 'DB_PASSWORD', '?WHxx333Yo' ); [パスワード] /** Database hostname */ また、最終行に以下の分を追加します。 これをしないと、プラグインを追加するときにFTP接続情報なるものを聞かれます。 define('FS_METHOD', 'direct'); |
2.5 ファイルの移動
/srv/[FQDN]の下に展開した中身を移動します
1 2 |
# cd /srv/[FQDN]/ # mv wordpress/* . |
移動されたことを確認後 wordpressディレクトリーとダウンロードしたlatest-ja.tar.gzを削除
1 2 3 |
# cd /srv/[FQDN]/ # rm -Rf wordpress # rm latest-ja.tar.gz |
wordpressディレクトリの所有者をapacheにします。
これをしないとプラグインのインストールなどの際に、ディレクトリを作成できないとか言われてしまします。
1 2 |
# chown -R http:http /srv/[FQDN]/ # chmod 775 -R /srv/[FQDN]/ |
1 |
# systemctl restart httpd |
2.6 起動確認
ブラウザで http://<FQDN>/wp-admin/install.php に接続し、ユーザー名、パスワード等必要事項を入力し、インストールを開始してください
通常は、これで下図のWordpress管理画面にアクセスする「ユーザー名」「パスワード」等初期設定インストール画面が表示されますので
Site Title : 任意のタイトル
Username : 任意のユーザー名
Password : 任意のパスワード
Your Email : 管理者のメールアドレス
を入力し、「WordPressをインストール」クリック
WordPress管理画面への「ユーザー名またはメールアドレス」「パスワード」の入力画面が出ます。