我已经花了几个小时试图在macbook pro中设置phpmyadmin,并且在localhost中运行,但是在填写用户名和密码时,我会遇到一些错误,通常与sql有关。我想知道是否有任何教程遵循,以便我可以设置它正确。谢谢您,á利瓦罗。
pexxcrt21#
尝试更改端口号。您可以使用端口号8080或3306。它对我有用。
m3eecexj2#
当您在phpmyadmin中使用默认的“host”值时,它会尝试通过套接字连接进行连接( $cfg['Servers'][$i]['host'] = 'localhost'; 是默认值,除非您在 config.inc.php ). 在macos上,由于某些原因php和mysql不同意socket文件的默认位置。有几种简单的解决方案,但对于其中两种,必须首先确定到套接字的实际路径。最简单的方法是访问mysql命令提示符。打开“应用程序”->“实用程序”文件夹中的“终端”,然后键入 mysql -u root -p 当出现提示时,输入mysql root密码(默认值通常为空)。在mysql提示符下,键入 status; 您将看到几个与连接相关的设置的列表。找一个像这样的unix套接字:/var/run/mysqld/mysqld.sock这是到套接字的路径。你的肯定会和这个不一样。现在,关于解决这个问题的方法:更改php中的默认套接字。在您喜欢的文本编辑器中打开php配置文件(可能是php.ini),并将正确的路径添加到行中 mysqli.default_socket = . 此更改将影响使用默认系统套接字路径的任何php脚本。仅更改phpmyadmin的套接字。在您喜爱的文本编辑器中打开phpmyadmin配置文件(config.inc.php)。编辑或添加行 $cfg['Servers'][$i]['socket'] = ''; 用正确的路径。将连接类型切换为tcp网络。同样,编辑phpmyadmin配置文件(config.inc.php)并编辑或添加行 $cfg['Servers'][$i]['host'] = '127.0.0.1'; . 这将告诉phpmyadmin使用tcp网络连接方法而不是套接字。请注意,默认情况下,您的mysql示例可能不会侦听传入的tcp连接,并且您的mysql用户root@localhost 不等于root@127.0.0.1 或根@%。你应该只需要这些解决方案中的一个,而不是全部三个。
$cfg['Servers'][$i]['host'] = 'localhost';
config.inc.php
mysql -u root -p
status;
mysqli.default_socket =
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['host'] = '127.0.0.1';
2条答案
按热度按时间pexxcrt21#
尝试更改端口号。您可以使用端口号8080或3306。它对我有用。
m3eecexj2#
当您在phpmyadmin中使用默认的“host”值时,它会尝试通过套接字连接进行连接(
$cfg['Servers'][$i]['host'] = 'localhost';
是默认值,除非您在config.inc.php
). 在macos上,由于某些原因php和mysql不同意socket文件的默认位置。有几种简单的解决方案,但对于其中两种,必须首先确定到套接字的实际路径。最简单的方法是访问mysql命令提示符。打开“应用程序”->“实用程序”文件夹中的“终端”,然后键入
mysql -u root -p
当出现提示时,输入mysql root密码(默认值通常为空)。在mysql提示符下,键入status;
您将看到几个与连接相关的设置的列表。找一个像这样的unix套接字:/var/run/mysqld/mysqld.sock
这是到套接字的路径。你的肯定会和这个不一样。
现在,关于解决这个问题的方法:
更改php中的默认套接字。在您喜欢的文本编辑器中打开php配置文件(可能是php.ini),并将正确的路径添加到行中
mysqli.default_socket =
. 此更改将影响使用默认系统套接字路径的任何php脚本。仅更改phpmyadmin的套接字。在您喜爱的文本编辑器中打开phpmyadmin配置文件(config.inc.php)。编辑或添加行
$cfg['Servers'][$i]['socket'] = '';
用正确的路径。将连接类型切换为tcp网络。同样,编辑phpmyadmin配置文件(config.inc.php)并编辑或添加行
$cfg['Servers'][$i]['host'] = '127.0.0.1';
. 这将告诉phpmyadmin使用tcp网络连接方法而不是套接字。请注意,默认情况下,您的mysql示例可能不会侦听传入的tcp连接,并且您的mysql用户root@localhost 不等于root@127.0.0.1 或根@%。你应该只需要这些解决方案中的一个,而不是全部三个。