Blog-備忘録-
記憶はそのうち消えてしまうので、備忘録を作ってみました。
まとめるのも得意ではないので取り留めのないメモかもしれませんけど、まぁ、自分用なので。
誰かの役に立つこともあるかもしれないのでとりあえず公開しておきます。
- 新PCとモニターの話
-
投稿日:2026-04-01 /IT的な日常の話【11】
HDMIケーブルで繋げば別モニター使えると思ってました。
しかし、繋いでみると「No Signal」……なぜ。
旧PCでは問題なく拡張画面として使えているからケーブルやモニターに異常はないはず。
となると新PC側か……とりあえずデバイスマネージャを確認、異常なし。
いったんケーブル抜いてもう一度丁寧に挿してみる、変化なし。
「Windows + Ctrl + Shift + B」でグラフィックドライバをリセット、変化なし。
再起動したら治る……なんてこともなく、やはり「No Signal」なのです。
しかし、別モニター側から音が出ていることに気づきました。
音声デバイスとしては認識されているようなのです。
新PCは内蔵GPU(Intel)と外部GPU(NVIDIA)を切り替える
「MSHybridモード」を搭載していますが、これが何か影響しているのではと
さっそく専用ソフトの MSI Center からGPUモードの設定を確認しました。
GPUモードは「MSHybridグラフィックモード」となっている。
これを内蔵GPUを無効にし、外部GPUのみを動作させる
「ディスクリートグラフィックモード」に変更して再起動してみました。
映像もちゃんと表示されて、やっと拡張画面として使えるように!
新PCの解像度が「2880x1800」に対して
別モニターは「1920x1080」っていう新たな問題が出てきましたけどね。
大きく映るのは良いんだけど、なんか窮屈に見えるというか……
27型のWQHD以上のモニター欲しくなっちゃった。
ちなみにその後「MSHybrid」に戻しても拡張画面はそのまま使えました。
変更したことでリセットされて正常に戻った感じですかね。
画面が映らないとケーブルやモニター側を疑いがちですけど、
実はPC側の設定が原因だったりもするんですよね。
こういうトラブルの時はヘルプデスクの経験が活きてるなと感じます。
- DB作成&phpMyAdmin導入
-
投稿日:2025-12-28 /制作工程の話【9】
root で MariaDB に入ってデータベースの作成を進めます。
vagrant ssh で仮想サーバーに入った状態で以下コマンドを打ちます。
unix_socket 認証を使って root ユーザーとして MariaDB にログインするためのコマンドです。
パスワード入力が不要なのは、OSのroot権限と連携した認証方式だからです。
sudo mariadb
DBに入ったらデータベースの作成のSQLを実行します。
作成と同時に文字コードの指定と照合順序の指定もしちゃいます。
CREATE DATABASE データベース名
DEFAULT CHARACTER SET utf8mb4
COLLATE utf8mb4_unicode_ci;
「データベース名」は任意の名前をアルファベットで指定してください。
文字コードは絵文字や拡張文字など4バイト文字も扱える「utf8mb4」にしました。
照合順序に選択した「utf8mb4_unicode_ci」は、アルファベットの大文字・小文字を区別せず、Unicode のルールに基づいた自然な並び順で比較・ソートされる設定です。
ちなみに文の最後に「;」をつけるまでSQLは実行されません。
「;」を忘れてEnter押すと「->」と表示されますが、コマンドの続きを待ってる状態なので「;」だけ入れて実行させましょう。
続いて作成したデータベースにログインするユーザーを作ります。
CREATE USER 'admin'@'localhost'
IDENTIFIED BY 'パスワード';
今回は分かりやすさ重視でユーザー名を「admin」にしましたが、ここは任意です。
実務ではアプリケーション専用のユーザー名を付けることが多いです。
「@'localhost'」は接続元を表しており、同じサーバー内からの接続のみに制限しています。
「IDENTIFIED BY」で、このユーザーのログイン用パスワードを設定します。
作成したユーザーに対して、データベースの操作権限を付与します。
GRANT ALL PRIVILEGES ON データベース名.* TO 'admin'@'localhost';
FLUSH PRIVILEGES;
指定したデータベースに対して、すべての操作ができる権限を admin に付与しました。
ローカルのadminだから全権与えましたけど、本番では必要最低限にしましょうね。
最後の1行は、ユーザー権限に関するキャッシュを再読み込みするコマンドです。最近の MariaDB では自動反映される場合もありますが、変更を確実に有効化するために実行しています。
データベースとユーザーの作成が完了したので
exit で MariaDB を抜けて仮想サーバーから接続テストを行います。
mysql -u admin -p データベース名
上記コマンドを打つと Enter password と表示されるので、設定したパスワードを入力します。
パスワードの文字列は表示されません。最初は戸惑いますが、パスワードの文字列を打ち込んで Enter を押せばいいのです。
無事にログインできれば「MariaDB [データベース名]>」と表示されます。
ちなみにこのコマンドは、「admin というユーザー(-u)で、パスワード認証(-p)を使って、指定したデータベースにログインする」という意味です。
とりあえずこれでローカル環境にMariaDBを設定することができました!
本番環境のバックアップデータ(.sqlファイル)を流し込んだら、ローカル環境でブログページの表示もできるようになった!
……と思ったら「接続エラー:ドライバーが見つかりませんでした」
えっと......?ぁ、PDO MySQL ドライバが無いと。
②でPHPインストールはしましたが、あれはPHP本体をインストールしただけで MySQL(MariaDB)用のPDOドライバは含まれておらず、php-mysql を別途インストールする必要があったそうです。
さて、vagrant ssh の状態で次のコマンドを実行します。
sudo apt-get install -y php-mysql
sudo systemctl restart apache2
インストール完了したら、無事にローカルでも表示できました。
確認や管理をしやすくするために phpMyAdmin の導入もしておきます。
sudo apt-get install -y phpmyadmin
途中、ダイアログが出てきます。
まずWebサーバーの選択。
今回は Apache を使用しているため、phpMyAdmin の設定対象としては apache2 を選択します。
次に出てくるダイアログはデータベースの設定について。
「Configure database for phpmyadmin with dbconfig-common?」
これは「phpMyAdmin 自身が使う管理用DBを自動で作る?」と聞いているのでYesです。
するとパスワードの設定画面になります。
空欄のままEnterを押すとランダムで自動生成されます。
このパスワードは phpMyAdmin が内部で MariaDB に接続するためのもので、設定ファイルに保存されて通常ユーザーが使うことはありません。
なので自動生成でOKです。
そして Apache に phpMyAdmin を認識させます。
今回使用している jammy では自動で有効化されますが、念のためです。
sudo phpenmod mysqli
sudo systemctl restart apache2
「phpenmod」はPHP拡張モジュールを有効化するためのコマンドです。
phpMyAdmin は内部で mysqli 拡張を利用して DB に接続するので mysqli を有効化してます。
これで original-domain.local/phpmyadmin で表示されるはず!
と、思ったら404エラーでした。
えっとですね……Apache が /phpmyadmin のURLと実体ディレクトリを結びつける設定を読み込んでなかったことが原因でした。
「/phpmyadmin に来たら /usr/share/phpmyadmin を見せてね」というApache向け指示書が必要です。
sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf
「ln -s」ファイルの実体をコピーするのではなく、別の場所から参照できる「シンボリックリンク」を作るコマンドです。
そして「sudo a2enconf phpmyadmin」で設定ファイルを有効化。
無事に http://original-domain.local/phpmyadmin で表示ができました。
これで Apache + PHP + MariaDB + phpMyAdmin のローカル検証環境が一通り完成です!
- MariaDBのセキュリティ初期設定
-
投稿日:2025-12-21 /制作工程の話【8】
それでは、セキュリティの初期設定をします。
sudo mysql_secure_installation
上記コマンドを打つと「Enter current password for root (enter for none)」と出てきます。
現在のパスワードはまだ設定してないのでEnterで進みます。
すると6つの質問が続くので Yes[Y] か No[n] で答えていきます。
■Switch to unix_socket authentication [Y/n]
Ubuntu環境では、MariaDBのrootユーザーはパスワード認証ではなく、
unix_socket認証を使うのが標準なので[Y]を入力してEnterを押します。
これでOSにログインしてsudo権限を持つユーザーのみがデータベース管理を行えるようになります。
MySQL(MariaDB)単体のパスワード管理に依存しないため、より安全な方式です。
■Change the root password? [Y/n]
rootユーザーはunix_socket認証を使用するため、
パスワードによるログイン自体を想定していないので[n]を選択します。
■Remove anonymous users? [Y/n]
初期状態で用意されている匿名ユーザーを消しますかと聞かれています。
ローカル環境といえどリスクになるので[Y]を選択して削除します。
■Disallow root login remotely? [Y/n]
リモートからのrootユーザーでのログインを禁止するか、こちらも[Y]です。
誰もが知る「root」というユーザー名は攻撃対象になりやすく
ネットワーク越しにログインできるのは非常に危険なのでローカルのみに制限します。
■Remove test database and access to it? [Y/n]
動作確認用に「test」というデータベースあるけど消しますか?
おまけで入ってるものですが、実務では使われることはなく
セキュリティ上も不要なので [Y] で削除します。
■Reload privilege tables now? [Y/n]
[Y]でリロードして権限を再読み込みしたら完了です。
これで MariaDB の初期セキュリティ設定は完了です。
次回はデータベースとユーザーの作成を進めていきます。
- MariaDBをインストール
-
投稿日:2025-12-14 /制作工程の話【7】
さて、いよいよMariaDBをインストールします。
VMに入ってまずは必要なツールを入れます。
sudo apt-get install -y curl software-properties-common
「curl」は外部からデータを取得するためのコマンドライン用の通信ツール、「software-properties-common」はaptのリポジトリを追加するための管理用ツールです。
今回はUbuntu標準パッケージのみを使用するので必須ではないですが、実務を考慮するとよく使うものらしいのでひとまず入れておきます。
次にMariaDB公式リポジトリを追加します。
本番で使われているバージョンに合わせて指定してみました。
curl -LsS https://r.mariadb.com/downloads/mariadb_repo_setup | \
sudo bash -s -- --mariadb-server-version=10.5
これはパイプ( | )で2つのコマンドをつないでいるのでまとめて実行できます。
バックスラッシュ( \ )は改行用の記号で次の行も同じコマンドですよってことで
curlで取得したスクリプトをsudo bashに渡して実行してるってことです。
ちなみにどんなスクリプトを取得したか明確じゃないときは使わないほうが良いです。
さて、リポジトリを追加しただけでは apt がその存在をまだ認識していないため、パッケージの一覧を更新して情報を反映させます。
sudo apt-get update
apt は Ubuntu で使われているパッケージ管理ツールです。
ソフトウェアのインストールや更新を、依存関係も含めて一括で管理してくれます。
update が終わったらついに MariaDB をインストールです。
sudo apt-get install -y mariadb-server
インストールができたら MariaDB をOS起動時に自動起動するよう設定して、起動させます。
sudo systemctl enable mariadb
sudo systemctl start mariadb
ここまで出来たらインストールしたMariaDBのバージョンを確認しておきましょう。
mysql --version
バージョン確認をすると、指定したはずの 10.5 ではなく
MariaDB 10.6 がインストールされていました……
しかし、これは失敗というわけではありません。
Ubuntu 22.04(jammy)では MariaDB 10.6 が標準世代となっており、MariaDB公式リポジトリでも 10.5 は基本的に focal(20.04)向けとして扱われているためです。
mariadb_repo_setup でバージョン指定をしても、OSと組み合わせて利用できない場合は、自動的にそのOSで推奨されるバージョンが選択されるのです。
本番環境とまったく同じになりませんでしたが
MariaDB 10.5 → 10.6 はメジャーバージョン違いではなく、
SQL互換性も高いため、今回のローカル検証環境では 10.6 を採用します。
次回からMariaDBの初期設定などを進めていきます。
- PHPをインストール
-
投稿日:2025-12-07 /制作工程の話【6】
ローカル環境ができたと思ってサイトのデータを置いたら500エラー……
いったん初期表示用のHTMLファイルだけに戻す、表示される……?
ぁ。
Apacheだけで構築したってことはPHPが使えない状況か。
当然ながらサイトデータにはPHPを使ってるので、ApacheがPHPを解釈できずにエラーになっちゃったわけですね。
ということで、PHPのインストールをしなくては。
まず「vagrant ssh」でVMに入ります。
そしてPHPインストールするには以下コマンドを入力!
sudo apt-get install -y php libapache2-mod-php
途中で「Daemons using outdated libraries」というダイアログが出てきます。
「アップデートで使ってるライブラリが変わったから、再起動した方がいいサービスあるけど、どうする?」って聞かれます。
Ubuntuでは「apt install」や「apt upgrade」をしたときに
古いライブラリを掴んだまま動いてるデーモンがあると、これが出るそうです。
ダイアログで[*]がついているものが再起動推奨のサービス。
特に問題がなければ、普通にEnter押して<OK>で進めて大丈夫。
PHPインストールが終わったらApacheを再起動します。
sudo systemctl restart apache2
「info.php」を作ってPHPバージョンとか情報出たら成功!
ちなみに情報出すためのファイルの中身は以下。
<?php
phpinfo();
確認が終わったら info.php は削除。
サーバー情報が丸見えになったままはセキュリティ的に危ないので。
日常と易の話
日々の呟きとか易にまつわる話を徒然なるままにつづってみたいと思いつつ...
-
2026-05-16
とりあえず次へ。 -
2026-04-13
人生まだまだ迷走中。 -
2025-11-09
ブログを作ってみた。
制作工程の話
サイト制作にあたって勉強したことや、感じたことなどを書いてみました。
-
2026-05-13
ロゴのデザインに悩んだ話 -
2026-05-10
開発環境の後日談 -
2025-12-28
DB作成&phpMyAdmin導入 -
2025-12-21
MariaDBのセキュリティ初期設定 -
2025-12-14
MariaDBをインストール -
2025-12-07
PHPをインストール -
2025-11-30
Ubuntu 22.04に変更 -
2025-11-22
デザインを考える。 -
2025-11-11
ローカル環境の設定いろいろ -
2025-11-10
開発環境について
- ◀ 前へ