久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

在 Mac OSX 上使用 MAMP 時,如何讓 CakePHP 烘焙以找

How do I get CakePHP bake to find mysql.sock and recognize MySQL while using MAMP on Mac OSX?(在 Mac OSX 上使用 MAMP 時,如何讓 CakePHP 烘焙以找到 mysql.sock 并識別 MySQL?)
本文介紹了在 Mac OSX 上使用 MAMP 時,如何讓 CakePHP 烘焙以找到 mysql.sock 并識別 MySQL?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我目前正在閱讀 David Golding 的Beginning CakePHP:從新手到專業人士".有一次,我必須使用 CLI 命令蛋糕烘烤",我會看到歡迎屏幕,但是當我嘗試烘烤時,例如我收到以下錯誤消息的控制器:

Warning: mysql_connect(): Can't connect to local MySQL server through socket '/var/mysql/mysql.sock' (2) in/Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php 第 117 行警告:mysql_select_db():在第 122 行的/Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php 中提供的參數不是有效的 MySQL-Link 資源警告:mysql_get_server_info():在第 130 行的/Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php 中提供的參數不是有效的 MySQL-Link 資源警告:mysql_query():在第 154 行的/Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php 中提供的參數不是有效的 MySQL-Link 資源錯誤:您的數據庫沒有任何表.

我懷疑錯誤消息與 php 試圖訪問錯誤的 mysql-socket,即默認的 osx mysql-socket - 而不是 MAMP 使用的那個有關.因此,我更改了數據庫配置以連接到 UNIX mysql-socket (:/Applications/MAMP/tmp/mysql/mysql.sock):

class DATABASE_CONFIG {var $default = 數組('司機' =>'mysql','連接' =>'mysql_connect','持久' =>錯誤的,'host' =>':/Applications/MAMP/tmp/mysql/mysql.sock',//UNIX MySQL-socket'登錄' =>'我的用戶','密碼' =>'my_pass','數據庫' =>'博客','前綴' =>'',);}

但是我收到了與新套接字相同的錯誤消息:

Warning: mysql_connect(): Can't connect to local MySQL server through socket '/Applications/MAMP/tmp/mysql/mysql.sock:3306' (2) in/Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php 第 117 行警告:mysql_select_db():在第 122 行的/Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php 中提供的參數不是有效的 MySQL-Link 資源警告:mysql_get_server_info():在第 130 行的/Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php 中提供的參數不是有效的 MySQL-Link 資源警告:mysql_query():在第 154 行的/Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php 中提供的參數不是有效的 MySQL-Link 資源錯誤:您的數據庫沒有任何表.

此外,即使我使用 MAMP 在歡迎屏幕上顯示的 UNIX 套接字,當使用此套接字而不是 localhost 時,CakePHP 會丟失數據庫連接.

關于如何讓烘焙工作有任何想法?

-- 編輯 1 --

謝謝你們幫我解決問題!:)

我在確定 my.cnf 中的何處進行編輯以使 MySQL 偵聽 TCP/IP 請求時遇到問題.我能找到提到 TCP/IP 的唯一段落如下:

# 根本不監聽 TCP/IP 端口.這可以是一個安全增強,# 如果所有需要連接到 mysqld 的進程都運行在同一臺主機上.# 與 mysqld 的所有交互都必須通過 Unix 套接字或命名管道進行.# 請注意,在 Windows 上使用此選項而不啟用命名管道#(通過enable-named-pipe"選項)將使mysqld無用!##skip-網絡

這讓我可以完全關閉 TCP/IP,這與我的意圖相反.我不知道如何去做你的建議,如果你能更詳細一點,那就太好了.我在這些事情上完全是 n00b :S

注冊.連接到本地套接字:我刪除了主機參數中的前導冒號,結果相同.

解決方案

從錯誤來看,它似乎正在嘗試連接到實際 IP 地址而不是 UNIX 套接字,請看:

<前>'/Applications/MAMP/tmp/mysql/mysql.sock:3306'

它在套接字上附加了一個端口,這是錯誤的.

因此,我首先嘗試配置 MySQL 以偵聽 TCP/IP 請求(編輯 my.cnf 中的相應部分)并嘗試提供 127.0.0.1 而不是套接字.

如果您不向下滾動:

要在 CakePHP 級別修復它,請將 database.php 上的主機更改為localhost"并添加一個端口指令,其值設置為套接字名稱/Applications/MAMP/tmp/mysql/mysql.sock"

I am currently reading "Beginning CakePHP:From Novice to Professional" by David Golding. At one point I have to use the CLI-command "cake bake", I get the welcome-screen but when I try to bake e.g. a Controller I get the following error messages:

Warning: mysql_connect(): Can't connect to local MySQL server through socket '/var/mysql/mysql.sock' (2) in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 117

Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 122

Warning: mysql_get_server_info(): supplied argument is not a valid MySQL-Link resource in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 130

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 154
Error: Your database does not have any tables.

I suspect that the error-messages has to do with php trying to access the wrong mysql-socket, namely the default osx mysql-socket - instead of the one that MAMP uses. Hence I change my database configurations to connect to the UNIX mysql-socket (:/Applications/MAMP/tmp/mysql/mysql.sock):

class DATABASE_CONFIG {

    var $default = array(
        'driver' => 'mysql',
        'connect' => 'mysql_connect',
        'persistent' => false,
        'host' =>':/Applications/MAMP/tmp/mysql/mysql.sock', // UNIX MySQL-socket
        'login' => 'my_user',
        'password' => 'my_pass',
        'database' => 'blog',
        'prefix' => '',
    );

}

But I get the same error-messages with the new socket:

Warning: mysql_connect(): Can't connect to local MySQL server through socket '/Applications/MAMP/tmp/mysql/mysql.sock:3306' (2) in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 117

Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 122

Warning: mysql_get_server_info(): supplied argument is not a valid MySQL-Link resource in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 130

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /Applications/MAMP/htdocs/blog/cake/libs/model/datasources/dbo/dbo_mysql.php on line 154
Error: Your database does not have any tables.

Also, even though I use the UNIX-socket that MAMP show on it's welcome-screen, CakePHP loses the database-connection, when using this socket instead of localhost.

Any ideas on how I can get bake to work?

-- Edit 1 --

Thank you guys for helping me out! :)

I have a problem figuring out where in my.cnf to edit to get MySQL to listen to TCP/IP request. The only paragraph I can find where TCP/IP is mentioned is the following:

# Don't listen on a TCP/IP port at all. This can be a security enhancement,
# if all processes that need to connect to mysqld run on the same host.
# All interaction with mysqld must be made via Unix sockets or named pipes.
# Note that using this option without enabling named pipes on Windows
# (via the "enable-named-pipe" option) will render mysqld useless!
# 
#skip-networking

That allows me to turn off TCP/IP completely, which is the opposite of my intention. I don't know how to go about what you suggest, if you could be more elaborate it would be great. I am a total n00b on these matters :S

Reg. connecting to a local socket: I removed the leading colon in the host-parameter, same result.

解決方案

From the error, it looks like it's trying to connect to an actual IP address and not a UNIX socket, look:

 '/Applications/MAMP/tmp/mysql/mysql.sock:3306'

It's appending a port to the socket, which is wrong.

So, I'd first try to configure MySQL to listen to TCP/IP requests (edit the proper section in my.cnf) and try providing 127.0.0.1 instead of the socket.

In case you won't scroll down:

To fix it at CakePHP level, change host on database.php to 'localhost' and add a port directive with its value set to the socket name '/Applications/MAMP/tmp/mysql/mysql.sock'

這篇關于在 Mac OSX 上使用 MAMP 時,如何讓 CakePHP 烘焙以找到 mysql.sock 并識別 MySQL?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

Cannot use #39;Object as class name as it is reserved Cake 2.2.x(不能使用 Object 作為類名,因為它是保留的 Cake 2.2.x)
Session is lost after an OAuth redirect(OAuth 重定向后會話丟失)
Pagination Sort in Cakephp 3.x(Cakephp 3.x 中的分頁排序)
CakePHP Shared core for multiple apps(CakePHP 多個應用程序的共享核心)
Login [ Auth-gt;identify() ] always false on CakePHP 3(在 CakePHP 3 上登錄 [ Auth-identify() ] 始終為 false)
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 87 bytes)(致命錯誤:允許的內存大小為 134217728 字節已用盡(嘗試分配 87 字節))
主站蜘蛛池模板: 人人干在线视频 | 欧美国产视频一区二区 | 国产成人精品久久二区二区 | 亚洲一级视频在线 | 亚洲福利 | 五月婷婷在线视频 | 99精品国产一区二区青青牛奶 | 精品国产伦一区二区三区观看体验 | 美女视频黄色的 | 国产乱码高清区二区三区在线 | 亚洲高清视频在线观看 | 日韩日韩日韩日韩日韩日韩日韩 | 啪啪精品 | 久久视频精品 | 91传媒在线观看 | 免费一级毛片 | 欧美激情免费在线 | 日韩亚洲欧美一区 | 日本特黄a级高清免费大片 成年人黄色小视频 | 综合久久亚洲 | 日本精品视频一区二区三区四区 | 四虎免费视频 | 日韩在线视频播放 | 国产在线精品一区二区三区 | 亚洲狠狠爱一区二区三区 | 久久中文字幕一区 | 欧美国产中文 | 国产精品毛片无码 | 中文字幕日韩欧美一区二区三区 | 亚洲精彩免费视频 | 国产精品免费av | 精品在线一区二区 | 国产精品色哟哟网站 | 在线一区二区三区 | 欧美亚洲一级 | 国产精品久久久久9999鸭 | 日本欧美在线观看视频 | 色综合99| 日韩一区二区在线观看视频 | 国产精品久久久久久久久久久新郎 | 国产观看|