配置 phpMyAdmin 以显示多个服务器选项(多个,选项,配置....)

feifei123 发布于 2025-08-26 阅读(2)

配置 phpmyadmin 以显示多个服务器选项

本文档旨在指导用户配置 phpMyAdmin 以便在登录界面显示多个 MySQL 服务器选项。通过修改 config.inc.php 文件,并采用循环的方式配置服务器连接信息,用户可以方便地在不同的数据库服务器之间进行切换,提升管理效率。本文将提供详细的配置步骤和示例代码,帮助用户轻松实现多服务器管理。

配置 phpMyAdmin 以显示多个服务器

phpMyAdmin 默认配置可能只允许连接到一个 MySQL 服务器。要配置 phpMyAdmin 以显示服务器下拉列表并在登录时允许选择多个服务器,需要修改其配置文件 config.inc.php。

1. 找到 config.inc.php 文件

该文件的位置取决于你的 phpMyAdmin 安装方式。常见的路径包括:

  • /etc/phpmyadmin/config.inc.php (Debian/Ubuntu)
  • /usr/local/etc/phpmyadmin/config.inc.php (Homebrew)
  • phpMyAdmin 安装目录下的 config.inc.php 或 config.sample.inc.php (需要复制并重命名为 config.inc.php)

2. 编辑 config.inc.php 文件

使用文本编辑器打开 config.inc.php 文件。

3. 配置多个服务器

找到配置服务器的部分。通常,你会看到类似于以下的代码块:

$i = 0;
$i++;
$cfg['Servers'][$i]['verbose'] = 'localhost';
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['auth_type'] = 'config';

要配置多个服务器,可以使用循环来动态生成服务器配置。以下是一个示例,展示如何配置两个服务器:

$i = 0;
$hosts = [
    '172.18.0.1:3307',
    'localhost'
];

foreach($hosts as $host) {
    $i++;
    $cfg['Servers'][$i]['host'] = $host;
    $cfg['Servers'][$i]['port'] = ''; // 留空使用默认端口
    $cfg['Servers'][$i]['socket'] = '';
    $cfg['Servers'][$i]['connect_type'] = 'tcp';
    $cfg['Servers'][$i]['extension'] = 'mysqli';
    $cfg['Servers'][$i]['compress'] = FALSE;
    $cfg['Servers'][$i]['controluser'] = 'pma'; // 可选:用于高级功能的控制用户
    $cfg['Servers'][$i]['controlpass'] = 'pmapass'; // 可选:控制用户密码
    $cfg['Servers'][$i]['auth_type'] = 'cookie'; // 使用cookie认证
    $cfg['Servers'][$i]['user'] = ''; // 数据库用户名,留空则在登录时输入
    $cfg['Servers'][$i]['password'] = ''; // 数据库密码,留空则在登录时输入
    $cfg['Servers'][$i]['only_db'] = '';
    $cfg['Servers'][$i]['verbose'] = $host; // 显示在服务器下拉列表中的名称
    $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin'; // phpMyAdmin数据库名称,用于存储配置信息
    $cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
    $cfg['Servers'][$i]['relation'] = 'pma_relation';
    $cfg['Servers'][$i]['table_info'] = 'pma_table_info';
    $cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
    $cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
    $cfg['Servers'][$i]['column_info'] = 'pma_column_info';
    $cfg['Servers'][$i]['history'] = 'pma_history';
    $cfg['Servers'][$i]['designer_coords'] = 'pma_designer_settings';
}

代码解释:

  • $hosts 数组包含了要连接的服务器地址。
  • foreach 循环遍历 $hosts 数组,为每个服务器生成配置。
  • $cfg['Servers'][$i]['host'] 设置服务器地址。
  • $cfg['Servers'][$i]['verbose'] 设置在服务器下拉列表中显示的名称。
  • $cfg['Servers'][$i]['auth_type'] 设置认证类型,常用的有 cookie 和 config。cookie 类型需要在登录时输入用户名和密码,config 类型则直接在配置文件中指定用户名和密码(不推荐,存在安全风险)。
  • 其他配置项可以根据需要进行调整,例如端口、用户名、密码等。

4. 保存并重启 Web 服务器

保存 config.inc.php 文件,并重启 Web 服务器 (例如 Apache 或 Nginx) 以使更改生效。

5. 访问 phpMyAdmin

现在,当你访问 phpMyAdmin 时,应该会看到一个服务器下拉列表,其中包含你配置的所有服务器。

注意事项:

  • 确保 MySQL 服务器允许来自运行 phpMyAdmin 的服务器的连接。
  • 如果使用防火墙,确保允许 phpMyAdmin 服务器连接到 MySQL 服务器的端口 (默认为 3306)。
  • 避免在 config.inc.php 文件中存储密码,除非你完全了解安全风险。推荐使用 cookie 认证类型,并在登录时输入密码。
  • 如果 phpMyAdmin 仍然无法显示服务器下拉列表,请检查 phpMyAdmin 的错误日志以获取更多信息。

总结:

通过修改 config.inc.php 文件,并使用循环动态生成服务器配置,可以轻松地配置 phpMyAdmin 以显示多个服务器选项。这使得在不同的 MySQL 服务器之间切换变得更加方便,提高了数据库管理的效率。请务必注意安全问题,并根据实际情况调整配置。

以上就是配置 phpMyAdmin 以显示多个服务器选项的详细内容,更多请关注资源网其它相关文章!

标签:  mysql php word apache nginx phpmyadmin foreach Cookie 循环 数据库 ubuntu debian phpMyAdmin 

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。