安装过程中出现phpmyadmin错误"' port'的空值指定&#34。

时间:2016-05-07 14:10:18

标签: mysql apache ubuntu phpmyadmin

我一直在尝试使用ubuntu 14.04 / mysql 5.7.12在我的digitalocean droplet上安装phpmyadmin。我有一个带有apache的LAMP堆栈作为Web服务器。

在安装过程中,我不断收到此处显示的错误。 error message ë

我是phpmyadmin的新手,想知道为什么我会继续这样做。以前使用旧版本的mysql安装phpmyadmin是没有错误的。我正在尝试将其安装为非root sudo用户。

任何方向或建议都将不胜感激。

8 个答案:

答案 0 :(得分:52)

我的机器配置 - 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向导中,请选择重试;如果没有运行sudo dpkg-reconfigure phpmyadmin(当询问您是否要为phpmyadmin重新安装数据库时选择)并正常继续而不更改任何值。如果要更改某个值,请在之前编辑过的文件中进行更改。

当配置窗口询问您要对现有配置文件执行的操作时,请选择保留当前安装的本地版本

此时,您可以检查差异,只检查您在文件中必须存在的差异。

答案 1 :(得分:6)

这里的MySQL行为发生了变化,所以你几乎没有选择:

更新:您可以按照answer from William Ardila

中的说明解决此错误

答案 2 :(得分:6)

我在互联网上搜索了好几个小时但除了this之外没有人能为我工作。

dbc_dbport=''更改为dbc_dbport='0'后,我仍遇到其他一些问题。

如果您无法正常继续配置过程,请执行以下附加步骤:

首先,只需选择中止。

然后使用您在安装MariaDB时定义的密码以root身份登录mysql。

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 替换为您自己的并保存。 (它必须已经正确设置。)

答案 3 :(得分:4)

我们的服务器配置 - Debian 8.x. Mysql 5.7 PHP 5 + 7 Apache 2.4

这应该有效:

  • unistall phpmyadmin(--purge)
  • 重新安装phpmyadmin(忽略错误)
  • 使用mysql控制台或其他方法检查mysql中是否存在phpmyadmin用户和/或数据库。
  • 如果它们不存在,请在phpmyadmin表上手动创建它们并使GRANT 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.
  • 使用root或管理权限从控制台运行dpkg-reconfigure phpmyadmin

  • 选择重新安装phpmyadmin的数据库 - YES !!

  • 当配置窗口询问您要对现有配置文件执行的操作时,请选择 - “保留当前安装的本地版本”。

  • 在控制台输出中,您不应再有任何mysql空端口错误。

这对我有用。

答案 4 :(得分:1)

上述情况都没有对我的情况有所帮助 - 因为,mysql未运行/未安装(请sudo systemctl status mysql检查)。

  1. 在Phpmyadmin安装中略过错误。
  2. sudo apt-get install mysql-server mysql-client重新安装mysql。
  3. 使用sudo dpkg-reconfigure phpmyadmin重新配置并接受默认值 - 这次它们会有所不同(但您可能需要设置密码)。
  4. 说是用维护者的版本覆盖配置文件。
  5. 顺便说一句,phpmyadmin.conf中的端口仍为dbc_dbport=''

答案 5 :(得分:1)

另一种解决方法,我正在更新Ubuntu 14.04-> 16.04:

  • 在向导中,选择“ tcp / ip”作为连接方法,即本地主机端口0
  • 从/etc/phpmyadmin/config-db.php读取phpmyadmin用户密码
  • 更改数据库中的phpmyadmin用户密码
  • 将其粘贴到向导中(两次)

向导将通过:)

答案 6 :(得分:0)

我在向“ mysql” root和“ mysql”用户添加密码后解决了这个问题。如果您将其中一个或两个都留空,则可以执行以下操作:

sudo -i

检查:

whoami

如果是“ root”,请输入:

mysqlmysql -u root -p(如果您已经具有root用户的密码)。

mysql终端打开;然后我添加了密码:

  

mysql> ALTER USER'root'@'localhost'由my_sql_native_password标识为'newpassword';

和/或“用户”(如果需要)相同。然后,一旦我在MySQL和phpMyAdmin中为用户设置的密码相同,就完成了。

在添加密码之前,我应用了@William Ardilla的建议以及@ user5781956的建议。也许只有@William Ardilla的就足够了。

答案 7 :(得分:0)

伴随


我的机器配置-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向导中,请选择retry;如果未运行,则运行sudo dpkg-reconfigure phpmyadmin(在询问您是否要为phpmyadmin重新安装数据库时选择“是”),然后继续正常运行而不更改任何值。如果要更改某些值,请在之前编辑的文件中进行。

当配置窗口询问您要使用现有配置文件做什么时,请选择“保留当前安装的本地版本”。

这时您可以检查差异,只有那些必须存在于文件中的差异。


解决方案我还必须更改此行:

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

之后一切正常!