質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

MediaWiki

MediaWikiは、Wikipediaを運営するウィキメディア財団が開発するコラボレーションツールです。複数ユーザーによるコンテンツ管理機能を備えるなど、Wikipediaと同じ操作性や編集機能を持ちます。PHPで記述されており、MySQLやPostgreSQLをデータベースに使用できます。

Q&A

解決済

1回答

1476閲覧

MediaWikiのインストールで詰まってしまいました。database schema updater ?

One_of_Arthur

総合スコア82

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

MediaWiki

MediaWikiは、Wikipediaを運営するウィキメディア財団が開発するコラボレーションツールです。複数ユーザーによるコンテンツ管理機能を備えるなど、Wikipediaと同じ操作性や編集機能を持ちます。PHPで記述されており、MySQLやPostgreSQLをデータベースに使用できます。

0グッド

0クリップ

投稿2023/03/27 09:22

編集2023/03/28 00:26

実現したいこと

  • MediaWikiのインストール及び稼働
  • エラーを解決したい

前提

ubuntuでMediaWikiのインストール作業をしています。
何度もつまづきながら、ぐぐって進んできました。
MediaWikiのインストール画面(GUI)まで来ましたが、各設定を入力して
MediaWiki のインストールを開始するはずの「続行」ボタンを押すと、
何やらエラーを起こしているようでメッセージが表示されました。

発生している問題・エラーメッセージ

[4214343adff1a78159f66736] /nd/mw-config/index.php?page=Install Wikimedia\Rdbms\DBQueryError: A database query error has occurred. Did you forget to run your application's database schema updater after upgrading or after adding a new extension? Please see https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Upgrading and https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:How_to_debug for more information. Error 1044: Access denied for user 'apple2c'@'localhost' to database 'nd' Function: MysqlInstaller::setupDatabase Query: CREATE DATABASE `nd`CHARACTER SET utf8 Backtrace: from /var/www/html/nd/includes/libs/rdbms/database/Database.php(1523) #0 /var/www/html/nd/includes/libs/rdbms/database/Database.php(1507): Wikimedia\Rdbms\Database->getQueryException() #1 /var/www/html/nd/includes/libs/rdbms/database/Database.php(1481): Wikimedia\Rdbms\Database->getQueryExceptionAndLog() #2 /var/www/html/nd/includes/libs/rdbms/database/Database.php(854): Wikimedia\Rdbms\Database->reportQueryError() #3 /var/www/html/nd/includes/installer/MysqlInstaller.php(450): Wikimedia\Rdbms\Database->query() #4 /var/www/html/nd/includes/installer/Installer.php(1686): MysqlInstaller->setupDatabase() #5 /var/www/html/nd/includes/installer/WebInstallerInstall.php(42): Installer->performInstallation() #6 /var/www/html/nd/includes/installer/WebInstaller.php(271): WebInstallerInstall->execute() #7 /var/www/html/nd/mw-config/index.php(82): WebInstaller->execute() #8 /var/www/html/nd/mw-config/index.php(40): wfInstallerMain() #9 {main}

試したこと

分からないながらもぐぐって、どうやら
php update.phpが必要らしいというところで、このコマンドを実行すると
Could not open input file: update.phpと表示され進みません。
sudo php update.phpもやってみましたが同じ結果に。
さらにぐぐって、maintenanceディレクトリの中にあるとわかり、
sudo php maintenance/update.phpをやってみると、

NOTE: Do not run maintenance scripts directly, use maintenance/run.php instead! Running scripts directly has been deprecated in MediaWiki 1.40. It may not work for some (or any) scripts in the future.

と表示されました。
sudo php maintenance/run.phpを使うべきだという意味だと思いますが、それをやってみると

Argument <script> is required! Runner for maintenance scripts Usage: php run.php [OPTION]... <script> Script runner options: --conf <CONF>: Location of LocalSettings.php, if not default --globals: Output globals at the end of processing for debugging --memory-limit <MEMORY-LIMIT>: Set a specific memory limit for the script, "max" for no limit or "default" to avoid changing it --profiler <PROFILER>: Profiler output format (usually "text") --server <SERVER>: The protocol and server name to use in URLs, e.g. https://en.wikipedia.org. This is sometimes necessary because server name detection may fail in command line scripts. --wiki <WIKI>: For specifying the wiki ID Arguments: <script>: The name of the maintenance script to run. Can be given as a class name or file path. The `.php` suffix is optional. Paths starting with `./` or `../` are interpreted to be relative to the current working directory. Other relative paths are interpreted relative to the maintenance script directory. Dots (.) are supported as namespace separators in class names. An extension name may be provided as a prefix, followed by a colon, e.g. "MyExtension:...", to indicate that the path or class name should be interpreted relative to the extension.

と表示されました。
スクリプトが必要だといっているのだと思いますが、それが何なのかわかりません。
現状、この位置です。

ここまで、MediaWiki 1.40.xでやってきたのですが、バージョンのところに「Beta」と書かれていたので、バージョンをひとつ下げてみたらどうだろうと考え、MediaWiki 1.39に切り替えてやってみましたが、同じように止まってしまいます。
そして、php maintenance/update.phpをやってみると、

The file /var/www/html/nd/LocalSettings.php must exist and be readable. Use --conf to specify it.

と表示されました。
機械翻訳してみると、どうやら
LocalSettings.phpが必要らしいのですが、MediaWikiのインストールが済んでいないのでまだ生成されていません。
sudo php maintenance/run.phprun.phpが存在してないので試していません。

補足情報(FW/ツールのバージョンなど)

MediaWiki 1.40.0-beta
MediaWiki 1.39.2
PHP Version 8.2.4
Ubuntu 18.04.6 LTS

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

CHERRY

2023/03/27 14:09

> Error 1044: Access denied for user 'apple2c'@'localhost' to database 'nd' データベース接続に失敗しているように見えますが、入力した項目は正しいでしょうか。
One_of_Arthur

2023/03/27 23:20

はい。 rootで入力すると、 Cannot access the database: :real_connect(): (HY000/1698): Access denied for user 'root'@'localhost'。 以下のホスト名、ユーザー名、パスワードを確認してから再度試してください。データベースホストとして「localhost」を使用している場合は、代わりに 「127.0.0.1」を使用してください(またはその逆)。 と表示されて進めないので、別のユーザーを作ってそれで入力しています。
guest

回答1

0

自己解決

解決しました。
ぐぐりながら色々やってみたので、明確な手順はかけませんが、以下の点が原因だったと思われます。

  • mysqlが複数インストール(起動?)されていた。
  • mysqlのユーザーに権限がなかった。特に「SELECT」が使えなかった。

投稿2023/03/28 00:24

One_of_Arthur

総合スコア82

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問