web-dev-qa-db-ja.com

インストール中のphpmyadminエラー「「ポート」の空の値が指定されました。」

私はubuntu 14.04/mysql 5.7.12を使用して、デジタル海の液滴にphpmyadminをインストールしようとしています。 ApacheをWebサーバーとして使用するLAMPスタックがあります。

インストール中、ここに示すエラーが表示され続けます。 error message E

私はphpmyadminが初めてで、なぜこれを取得し続けるのか疑問に思っています。以前のバージョンのmysqlでphpmyadminをインストールするとエラーが発生しませんでした。非ルートのSudoユーザーとしてインストールしようとしています。

方向性や提案は大歓迎です。

20
alionthego

私のマシン構成-Ubuntu 16.04-MySql 5.7.13-PHP 7.0.8-Apache 2.4.18

/etc/dbconfig-common/phpmyadmin.confファイルを編集して、変更します

dbc_dbport=''からdbc_dbport='0'

ファイルを編集して保存した後、まだdbconfig-commonウィザードを使用している場合は、retry;を選択します。実行されない場合_Sudo dpkg-reconfigure phpmyadmin(php-myadminのデータベースを再インストールするかどうか尋ねられたらはいを選択します)、値を変更せずに通常どおり続行します。何らかの値を変更したい場合は、以前に編集したファイルでそれを行います。

構成ウィンドウで既存の構成ファイルをどうするかを尋ねられたら、現在インストールされているローカルバージョンを保持するを選択します。

この時点で違いを確認できますが、ファイルに作成した違いのみが存在する必要があります。

54
William Ardila

MySQLの動作がここで変更されたため、いくつかのオプションがあります。

更新: William Ardilaからの回答 で説明されているように、このバグを回避できます。

6
Michal Čihař

私は何時間もインターネットを検索しましたが、 this を除いて私のために働いたものはありませんでした。

dbc_dbport=''dbc_dbport='0'に変更した後、他の問題がいくつか発生しました。

構成プロセスを適切に続行できない場合は、次の追加手順を実行します。

最初に、「中止」を選択します。

次に、MariaDBのインストール時に定義したパスワードを使用して、mysqlにrootとしてログインします。

mysql -u root -p

次に、次のコマンドを発行します。

CREATE DATABASE phpmyadmin;

次に、次のコマンドを発行します:(changethispasswordを自分の選択したパスワードに置き換えることを忘れないでください。 )

GRANT ALL ON phpmyadmin.* TO phpmyadmin@localhost IDENTIFIED BY 'changethispassword';

終了mysql>次を使用して:

\q

次に、データベース構成を編集します。

Sudo gedit /etc/phpmyadmin/config-db.php

定義したパスワードでdbpassパラメーターを編集します。

<?php
##
## database access settings in php format
## automatically generated from /etc/dbconfig-common/phpmyadmin.conf
## by /usr/sbin/dbconfig-generate-include
##
## by default this file is managed via ucf, so you shouldn't have to
## worry about manual changes being silently discarded.  *however*,
## you'll probably also want to edit the configuration file mentioned
## above too.
##
$dbuser='phpmyadmin';
$dbpass='changethispassword';
$basepath='';
$dbname='phpmyadmin';
$dbserver='localhost';
$dbport='';
$dbtype='mysql';

changethispasswordを自分のものに置き換えて保存します。 (既に正しく設定されている必要があります。)

6
user5781956

サーバー設定-Debian 8.x Mysql 5.7 PHP 5 + 7 Apache 2.4

これは動作するはずです:

  • unistall phpmyadmin(--purge)
  • phpmyadminを再インストールします(エラーを無視します)
  • mysqlコンソールまたはその他の手段を使用して、mysqlにphpmyadminユーザーやデータベースが存在するかどうかを確認します。
  • 存在しない場合は、手動で作成し、phpmyadminテーブルのすべての特権をphpmyadminユーザーに付与します。

  • /etc/dbconfig-common/phpmyadmin.confを手動で編集して、現在のmysqlサーバー設定を反映するようにします

dbc_dbserver = 'your_server'
dbc_dbport = 'your_mysql_port'
and any dbc_ fields that you feel need completion at this time
  • 手動で編集/etc/phpmyadmin/config-db.php現在のmysqlサーバーの設定を反映しているため
$dbserver = same_as_above
$dbport = your_mysql_listening_port
etc. - any other fields that you feel needs completing.
  • 実行dpkg-reconfigure phpmyadmin rootまたは管理者権限を持つコンソールから

  • phpmyadminのデータベースの再インストールを選択-はい!!

  • 設定ウィンドウで既存の設定ファイルをどうするか尋ねられたら、「現在インストールされているローカルバージョンを保持する」を選択します。

  • コンソール出力では、mysql empty portエラーはもうないはずです。

それは私のために働いた。

5

私の場合、上記のどれも役に立たなかった-どういうわけか、mysqlが実行されていなかった/インストールされていなかった(Sudo systemctl status mysqlで確認)。

  1. Phpmyadminインストールのエラーをスキップします。
  2. Sudo apt-get install mysql-server mysql-clientでmysqlを再インストールします。
  3. Sudo dpkg-reconfigure phpmyadminで再構成し、デフォルトを受け入れます-今回は少し異なります(ただし、パスワードを設定することもできます)。
  4. メンテナーのバージョンで設定ファイルを上書きするには、yesと言います。

ところで、phpmyadmin.confのポートはdbc_dbport=''のままでした。

1
marw

別の回避策として、Ubuntu 14.04-> 16.04を更新しました。

  • ウィザードで、接続方法として「tcp/ip」を選択します。localhostポート0
  • /etc/phpmyadmin/config-db.phpからphpmyadminユーザーパスワードを読み取ります
  • データベースのphpmyadminユーザーパスワードを変更します
  • ウィザードに貼り付けます(2回)

ウィザードが実行されます:)

1
Hungerburg

一緒に


私のマシン構成-Ubuntu 16.04-MySql 5.7.13-PHP 7.0.8-Apache 2.4.18

ファイルを編集します/etc/dbconfig-common/phpmyadmin.conf、変更

dbc_dbport='' to dbc_dbport='0'

ファイルを編集して保存した後、まだdbconfig-commonウィザードを使用している場合は、再試行を選択します。実行されない場合_Sudo dpkg-reconfigure phpmyadmin(phpmyadminのデータベースを再インストールするかどうか尋ねられたら[はい]を選択します)、値を変更せずに通常どおり続行します。何らかの値を変更したい場合は、以前に編集したファイルでそれを行います。

構成ウィンドウで既存の構成ファイルをどうするかを尋ねられたら、[現在インストールされているローカルバージョンを保持する]を選択します。

この時点で違いを確認できますが、ファイルに作成した違いのみが存在する必要があります。


解決策この行も変更する必要がありました。

"&& ($analyzed_sql_results['select_expr'][0] == '*')))" to "&& ($analyzed_sql_results['select_expr'][0] == '*'))"

その後、すべてが機能しました!

0
vanjavk

「mysql」ルートと「mysql」ユーザーの両方にパスワードを追加した後、これを解決しました。 2つのうちの1つまたは両方を空のままにすると、次のことができます。

Sudo -i

小切手:

whoami

「root」の場合、次を入力します。

mysql、またはmysql -u root -pすでにルートのパスワードを持っている場合。

mysqlターミナルが開きます。次に、パスワードを追加しました:

mysql> ALTER USER 'root' @ 'localhost' my_sql_native_passwordで 'newpassword'で識別;

および/または必要に応じて「ユーザー」のために同じ。その後、MySQLとphpMyAdminでユーザーのパスワードを同一にしたら、完了しました。

パスワードを追加する前に、@ William Ardillaと@ user5781956のアドバイスを適用しました。おそらく@William Ardillaだけで十分です。

0
Petr Kosvanec