在 Mac OS 10.6 (Snow Leopard)、10.7 (Lion)、10.8 (Mountain Lion) 上激活 PHP 和 MySQL 的最简单方法?

Posted

技术标签:

【中文标题】在 Mac OS 10.6 (Snow Leopard)、10.7 (Lion)、10.8 (Mountain Lion) 上激活 PHP 和 MySQL 的最简单方法?【英文标题】:Easiest way to activate PHP and MySQL on Mac OS 10.6 (Snow Leopard), 10.7 (Lion), 10.8 (Mountain Lion)? 【发布时间】:2010-11-20 13:52:56 【问题描述】:

在 Mac OS 10.6 (Snow Leopard)、10.7 (Lion)、10.8 (Mountain Lion) 上激活 phpmysql 的最简单方法是什么?

在求助于从 PHP 或 MySQL 网站下载之前,我更喜欢使用任何捆绑版本。这也排除了 MAMP 和类似的。

我对终端的命令行很满意。

【问题讨论】:

【参考方案1】:

打开一个好的文本编辑器(我推荐 TextMate,但免费的 TextWrangler 或 vi 或 nano 也可以),然后打开:

/etc/apache2/httpd.conf

找线:

"#LoadModule php5_module        libexec/apache2/libphp5.so"

并取消注释(删除#)。

从 mysql.com 下载并安装最新的 MySQL 版本。为 Intel 选择 x86_64 版本(除非您的 Intel Mac 是原始的 Macbook Pro 或 Macbook,它们不是 64 位芯片。在这种情况下,请使用 32 位 x86 版本)。

安装所有 MySQL 组件。使用 pref 窗格,启动 MySQL。

在共享系统首选项中,打开(或者如果它已经打开,关闭/打开)网络共享。

您现在应该运行 Apache/PHP/MySQL。

在 10.4 和 10.5 中,需要修改 php.ini 文件以指向 mysql.sock 的正确位置。有报道称这在 10.6 中已修复,但鉴于下面的一些 cmets,我们所有人似乎都不是这样。

【讨论】:

如果其他人想知道php.ini 在哪里,没有!但是您可以通过将 /etc/php.ini.default 复制到 /etc/php.ini 来添加一个到 /etc 并且“It works”页面位于/Library/WebServer/Documents/index.html.en 最后,我不得不将php.ini.default文件复制到php.ini中,PHP文件开始按原样执行。 要使用 MySQL,我还必须更改默认套接字,在我的例子中是 /tmp/mysql.sock(我安装了 MySQL 5.5)。 另外,保存 .conf 文件后,您可以直接使用命令sudo apachectl restart 而不是关闭网络共享。【参考方案2】:

要完成您的设置或 MySQL:

sudo vim /etc/profile

    添加别名

    alias mysql=/usr/local/mysql/bin/mysql
    alias mysqladmin=/usr/local/mysql/bin/mysqladmin
    

    然后设置你的root密码

    mysqladmin -u root password 'yourPassword'
    

    然后你就可以登录了

    mysql -u root -p
    

【讨论】:

我喜欢这个!而不是弄乱 PATH 添加别名 +1 另外,请记住关闭/重新打开终端会话以使别名生效。【参考方案3】:

这是一个不可见的文件夹。只需点击 Command + Shift + G(带您到 Go to Folder 菜单项)并输入 /etc/

然后它将带您进入该文件夹。

【讨论】:

【参考方案4】:

我更喜欢 HomeBrew 而不是 MacPorts 从源代码安装软件。

HomeBrew 会隔离 /usr/local/Cellar 中的所有内容,因此它不会到处乱扔文件。 (是的,MacPorts 将所有内容保存在 /opt/local 中,但它需要 sudo 访问权限,而且我不信任 MacPorts 的 root。)

安装 MySQL 很简单:

brew install mysql
mysql_install_db

要启动mysql,在终端输入:

mysqld&

有一种方法可以在启动时启动它,但我喜欢手动启动它。

【讨论】:

"brew link mysql" 将在 /usr/local/bin 等中创建许多符号链接。 我不确定我是否理解“乱七八糟的文件”评论。 MacPorts 将所有内容隔离在 /opt/local 中,因此它看起来是等价的。我想偶尔我会在 /Applications/MacPorts 中看到一些东西(例如用于 gnuplot 的 AquaTerm),但这是非常罕见的例外,通常是有充分理由的(例如,AquaTerm 是一个 .app 包),即便如此它仍然保留它组织在一个目录下... 哦,我发现简单地将 /opt/local/bin 添加到我的 $PATH,将 -I/opt/local/include 添加到 CPPFLAGS,将 -L/opt/local/lib 添加到LDFLAGS,然后不必记住为每个安装的包设置链接...... 我对符号链接的使用部分是基于无知;这是完全没有必要的。我只是不信任具有 root 权限的大型安装脚本。如果您认为 MacPorts 不会将文件分散到多个目录中,请查看卸载说明:guide.macports.org/chunked/…【参考方案5】:

这对我很有帮助:

http://maestric.com/doc/mac/apache_php_mysql_snow_leopard

它也适用于 Mac OS X Lion :D

.:编辑:. 在我的情况下,prefepane 只允许启动和停止 mysql,但在一些问题之后我已经卸载了他。 如果你需要一个应用程序来运行查询和创建数据库,你可以使用:Sequel Pro(它是免费的)或 Navicat

如果您需要在 ~/.bash_profile 中启动和停止 mysql,您可以添加以下行:

#For MySQL
alias mysql_start="/Library/StartupItems/MySQLCOM/MySQLCOM start"
alias mysql_stop="/Library/StartupItems/MySQLCOM/MySQLCOM stop"

重新加载控制台后只需调用:

$mysql_start 

$mysql_stop 

同意所需的操作。 希望对你有所帮助。

【讨论】:

MySQL prefpane 在 Lion 中是否适合您?也就是说,它可以打开/关闭 MySQL 吗? 我不需要 prefpane,但这能解决你的问题吗? :***.com/questions/3027479/… 但是prefpane只允许你启动和停止mysql。我重新编辑了我的帖子,因为这里没有格式化。【参考方案6】:

我同意 Benjamin 的观点,安装 MAMP 或 MacPorts (http://www.macports.org/)。将您的 PHP 安装分开更简单,并且可以避免在您犯任何错误时弄乱核心 PHP 安装!

MacPorts 更适合安装其他软件,例如 ImageMagick。在http://www.macports.org/ports.php查看可用端口的完整列表

MAMP 确实适用于 PHP、Apache 和 MySQL,因此您需要手动启用任何未来的 PHP 模块。不过,它非常易于使用。

【讨论】:

【参考方案7】:

考虑到它尚未发布,我假设这是提前提出的问题,或者您有开发人员的构建版本。正如本杰明所说,MAMP 是最简单的方法。但是,如果您想要本机安装,则该过程应该类似于 10.5。默认情况下,PHP 安装在 OS X 上(某些人并不总是激活),只需下载 32 位版本的 MySQL,启动 Apache,就可以了。您可能需要针对 PHP 或 MySQL 调整 Apache,具体取决于存在的构建。我不需要调整任何东西就可以让它工作。

【讨论】:

出于兴趣 - Snow Leopard 是 64 位的,为什么要选择 32 位的 MySQL? Leopard,甚至我认为大多数情况下的 Tiger,都支持 64 位。 64 位 MySQL 与其他一些包存在一些问题,不一定与 PHP 直接相关,但可以说他尝试了 Python —— 64 位 MySQL 对 MySQLDB 包造成了严重的困扰。它完全可用,只是还没有赶上所有的东西,遗憾的是。【参考方案8】:

仅供参考 - 如果有人在启动 Apache 时遇到问题,并收到有关

的错误

/usr/sbin/apachectl: line 82: ulimit: open files: cannot modify limit: Invalid argument

这是因为最近更新了 Snow Leopard 中的 Apache。修复很简单,打开/usr/sbin/apachectl并设置ULIMIT=""

http://blog.deversus.com/2010/11/mac-os-1065-apachectl-usrsbinapachectl-line-82-ulimit-open-files-cannot-modify-limit-invalid-argument/

【讨论】:

【参考方案9】:

如果您已升级到 Mac OS X 10.8 Mountain Lion,并且之前有一个工作系统,那么您只需按照上述选择的答案的第 1 步重新启用 PHP。

您可能还会发现以下首选项窗格对管理“网络共享”(Apache Web 服务器)很有用,它取代了 OS X 10.8 中删除的系统功能: http://clickontyler.com/blog/2012/02/web-sharing-mountain-lion/

我还必须在 httpd.conf 中重新添加我的虚拟主机包含行

【讨论】:

【参考方案10】:

除了原生版本,但您可能想尝试 BitNami MAMP Stacks(免责声明,我是开发人员之一)。它们是完全免费的 Apache、MySQL、PHP 和其他几个第三方库和实用程序的一体化捆绑包,在本地开发时很有用。特别是,它们是完全独立的,因此您可以同时安装多个,使用不同版本的 Apache 和 MySQL,它们不会相互干扰。您可以从 http://bitnami.org/stack/mampstack 或直接从 Mac OS X 应用商店 https://itunes.apple.com/app/mamp-stack/id571310406 获得它们

【讨论】:

【参考方案11】:

ammps 对我来说超级简单,并且有一个不错的基于 Web 的配置:

【讨论】:

我更喜欢标准捆绑版本,请看问题。【参考方案12】:

这里有一个很棒的指南:

https://discussions.apple.com/docs/DOC-3083

但是,我第一次尝试它并没有用。我发现了这个提示:在 Terminao 中运行“httpd -t”来检查配置文件的语法。原来使用教程中的复制和粘贴引入了一些奇怪的字符。修复此问题后,效果很好。指南中也有一些用于添加 MySQL 的链接。

这对我来说比 MAMP 效果好得多。使用 MAMP,即使您清除了缓存、历史记录、cookie 等,在刷新时对 .php 文件的更改将反映在浏览器中之前,我有大约 20 秒左右的延迟。

这个问题在 MAMP PRO 中得到了解决,但 MAMP PRO 有一个新问题:.php 文件将被下载而不是在浏览器中呈现为页面!我联系了支持人员,但他们不知道发生了什么。

内置的 Apache 服务器没有任何这些问题。绝对是要走的路。下面的指南与上面的指南几乎相同,但它的用户 cmets 很有帮助:

http://osxdaily.com/2012/09/02/start-apache-web-server-mac-os-x/#comment-572991

【讨论】:

以上是关于在 Mac OS 10.6 (Snow Leopard)、10.7 (Lion)、10.8 (Mountain Lion) 上激活 PHP 和 MySQL 的最简单方法?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Mac OS X 上构建 DTrace?

Mac OS X Snow Leopard 的默认 /etc/sysctl.conf 设置?

如何在 Mac OS X 10.6 中发出硬件哔声

在 Mac OS 10.6 上安装 psycopg2 时出错

Qt 5.4 - Mac OS X 10.6 支持

Snow Leopard 中的 Mac 资源编辑器?