无法通过XAMPP和phpMyAdmin访问MySQL

时间:2012-10-27 02:04:58

标签: mysql macos phpmyadmin xampp

我正在使用XAMPP,我正在尝试通过http://localhost/phpmyadmin访问phpMyAdmin,但我收到此错误消息:

Error
SQL query: 

SHOW PLUGINS

MySQL said: 

#1 - Can't create/write to file '/var/folders/_y/gtpc137d1q9gkvsj0dsxjd040000gn/T/#sql9f2_8_0.MYI' (Errcode: 13)

我有一段时间没试图访问它,所以我不知道自上次以来发生了什么变化。任何人都可以为我阐明这一点吗?我用谷歌搜索,似乎无法理解大多数人在相关问题上谈论的内容。

另外,我的XAMPP也不再连接到Apache了(它只是不断给我加载图像)。

这是我得到的错误:

121201 22:59:27 mysqld_safe Starting mysqld daemon with databases from /Applications/XAMPP/xamppfiles/var/mysql
Warning: World-writable config file '/Applications/XAMPP/xamppfiles/etc/my.cnf' is ignored
121201 22:59:28 [Warning] Setting lower_case_table_names=2 because file system for     /Applications/XAMPP/xamppfiles/var/mysql/ is case insensitive
121201 22:59:28 [Note] Plugin 'FEDERATED' is disabled. /Applications/XAMPP/xamppfiles/sbin/mysqld: Can't create/write to file '/var/folders/_y/gtpc137d1q9gkvsj0dsxjd040000gn/T/ibCVKOvf' (Errcode: 13)
121201 22:59:28  InnoDB: Error: unable to create temporary file; errno: 13
121201 22:59:28 [ERROR] Plugin 'InnoDB' init function returned error.
121201 22:59:28 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
121201 22:59:29 [Note] Event Scheduler: Loaded 0 events
121201 22:59:29 [Note] /Applications/XAMPP/xamppfiles/sbin/mysqld: ready for connections.
Version: '5.1.44'  socket: '/Applications/XAMPP/xamppfiles/var/mysql/mysql.sock'  port: 3306  Source distribution

6 个答案:

答案 0 :(得分:42)

日志中的以下行是原因:

  

“警告:全局可写的配置文件   '/Applications/XAMPP/xamppfiles/etc/my.cnf'被忽略“

正如Rishi Kalia已经指出的那样,你必须设置正确的权限:

  1. 打开终端
  2. 导航到XAMPP配置文件夹

    cd / Applications / XAMPP / xamppfiles / etc /

  3. my.cnf的权限设置为600

    sudo chmod 600 my.cnf

  4. 重启MySQL。

答案 1 :(得分:7)

我不得不重置我的xampp文件夹中的权限,因为我需要能够通过我正在构建的网站上的php将图像插入到htdocs中的文件夹中。

然而,在我更改了权限后,我得到了:Errcode:13

上面列出的过程有效但我正在为那些不知道如何使用终端的人添加一些额外的注意事项。

  

1。打开终端

  • 终端位于应用程序/实用程序/终端
  

2。导航到XAMPP配置文件夹

  • pwd 显示列出当前目录的路径

  • cd 更改当前目录

  • ls -a 列出该目录中的所有文件

将此代码输入终端:   cd / Applications / XAMPP / xamppfiles / etc /

  

3。将my.cnf的权限设置为600

将此代码输入终端: sudo chmod 600 my.cnf

  

4。重启MySQL

瞧!

答案 2 :(得分:2)

您必须转到xampp安装目录并将my.cnf的权限更改为600

答案 3 :(得分:0)

有时您可能安装了访问XAMPP使用的同一端口的应用程序或服务器。尝试更改XAMPP服务器的端口。以下链接将为您提供帮助。

http://veerasundar.com/blog/2009/07/how-to-change-xampp-server-port/

答案 4 :(得分:0)

如果您更改了XAMPP主文件夹内所有随附项目的写入和读取权限(" / Applications / XAMPP"),请务必将此文件夹设为可读且可写所有人:" / Applications / XAMPP / xamppfiles / var / mysql"。

这可以在Finder中访问该文件夹,然后在"共享&amp ;;中获取信息(Cmd + I)。权限"点击锁定图标,输入您的密码并更改"每个人 - 只读"每个人 - 阅读&写",并确保对所有随附的项目进行更改(单击齿轮图标然后"应用于随附的项目......")。

希望这有帮助!

答案 5 :(得分:-1)

非常简单......一旦你获得了xamppfiles的所有权,你还需要在xamppfiles / etc /目录中更新my.cnf文件。

默认MySQL密码为mysql

一旦您授权httpd服务作为用户使用您的用户名(OS X)运行您的组(ID)。

打开终端并输入sudo whoami,这会告诉你。在my.cnf文件中,将mysql替换为您的用户名。

重启Apache。

您的username.pid文件将自动更新。