在 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) 上激活 php 和 mysql 的最简单方法是什么?
在求助于从 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 Snow Leopard 的默认 /etc/sysctl.conf 设置?