仅使用phpmyadmin连接远程服务器而不安装本地mysql

4
编辑:我的问题与现有的问题不同,因为我需要一种不需要在本地服务器上安装mysql的方法。请不要盲目地将重复的问题标签应用于问题。谢谢。
编辑2:事实上这不是一个重复的问题,不像一些人仍然盲目坚持。我能够连接到远程服务器,而无需在服务器上安装mysql-client和server软件包,并成功通过phpmyadmin界面执行查询,添加了一个自定义行到代码库后。 我在phpmyadmin github存储库中创建了一个issue,并添加了我的解决方案。如果这个重复标签被删除,我将分享我的解决方案。


问题:

我正在尝试连接一个远程mysql服务器,并手动下载了phpmyadmin并解压到自定义的/ phpmyadmin文件夹中。我已经配置了我的自定义config.inc.php。

我没有自定义mysql安装程序,这不是首选选项。

相同的设置适用于我的php-mysql应用程序,但它不适用于phpmyadmin,当我尝试登录phpmyadmin时,我会收到以下错误:

#2002 - 通过套接字'/ var / run / mysqld / mysqld.sock'(2)无法连接到本地MySQL服务器-服务器没有响应(或本地服务器的套接字未正确配置)。

enter image description here

/*
 * Generated configuration file
 * Generated by: phpMyAdmin 4.7.9 setup script
 * Date: Wed, 07 Mar 2018 08:09:19 +0000
 */

/* Servers configuration */
$i = 0;

/* Server: dev-staging [1] */
$i++;
$cfg['Servers'][$i]['verbose'] = 'dev-staging';
$cfg['Servers'][$i]['host'] = 'external_ip';
$cfg['Servers'][$i]['port'] = '3306';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['compress'] = true;
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'dev_wp_user';
$cfg['Servers'][$i]['password'] = 'dev_password';

/* End of servers configuration */
$cfg['Servers'][$i]['AllowNoPassword'] = false;
$cfg['blowfish_secret'] = 'z{<F1!k=CjIVTpg)^wJq;StO?sL{F-^E';
$cfg['DefaultLang'] = 'en';
$cfg['ServerDefault'] = 1;
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';
$cfg['connect_type'] = 'tcp';

1
可能是重复的问题:[错误:无法通过套接字'/var/run/mysqld/mysqld.sock'(2)连接到本地MySQL服务器](https://dev59.com/8mct5IYBdhLWcg3wkuPE) - Aniket Sahrawat
这可能会有所帮助。 https://www.digitalocean.com/community/questions/mysql-can-t-connect-to-local-mysql-server-through-socket-var-run-mysqld-mysqld-sock-2 - Zaheer Abbas
1
你有没有仔细阅读问题?它不一样。@AniketSahrawat - mirza
1
@座右铭 你有读过解决方案吗?它和原来一样。没有参数。 - Aniket Sahrawat
是的,我已经阅读了它,不像你。我没有本地的MySQL安装,也不是首选选择,天才。@AniketSahrawat,在打开这个问题之前,我读了之前问题的所有32个答案。 - mirza
显示剩余2条评论
2个回答

1

我曾经遇到同样的问题并找到了正确的解决方法。

  1. 打开安装文件夹。
  2. 你会看到 "config.sample.inc.php"。
  3. 将其重命名为 "config.inc.php",然后打开。
  4. 更改 $cfg['Servers'][$i]['host'] 的值为你的服务器地址。在我的情况下,它是 192.168.1.102(我正在使用 nodejs 和 mysql)。
  5. 然后重新启动 xampp、wampp(Apache)或任何其他 php 服务器。
  6. 打开 http://localhost/phpMyAdmin/index.php enter image description here

1

看起来phpMyAdmin无法使用您的config.inc.php文件,正在尝试使用默认的localhost连接。这可能是由于文件开头缺少php开放标记引起的。phpMyAdmin在处理配置文件期间抑制输出和错误,因此如果有问题可能很难注意到。


1
感谢您的回答,虽然它并不是我问题的直接解决方案,但帮助我意识到了问题所在。请查看 https://github.com/phpmyadmin/phpmyadmin/issues/14065 - mirza
1
@motto 我看了一下代码,你修改getConnectionParams可能是必要的,因为phpMyAdmin无法正常加载配置文件。我会检查配置文件位置。在我的情况下,它位于安装目录的根目录下,但在你打开的问题中,你写到了config/config.inc.php。也许配置文件的位置不正确。此外,它可能会受到vendor_config.php中CONFIG_DIR的影响。在我的情况下,它是空的('')。我正在CentOs上使用4.7.9。但无论如何,很好,你找到了适合你情况的解决方案 :) - voter
我尝试了这两个位置,根目录和配置文件夹内部。但是没有任何区别。 - mirza

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接