2011-12-30 291 views
5

只需在CentOS 5服務器上使用mysql(mysql2 gem)設置一個新的rails 3.1.3應用程序/ apache/passenger ...我已經正確設置了該數據庫的數據庫和用戶,並且已將登錄和信息添加到我的database.yml文件中...我可以生成東西,並且可以使用rake db:遷移好,但是「很抱歉,但出了問題。「消息正在瀏覽器中呈現,並且此消息顯示在我的production.log文件中!Mysql2 ::錯誤(訪問拒絕用戶'root'@'localhost'(使用密碼:否)):

入門使用 「/」 爲xx.xxx.xx.xxx在2011-12-29十九時52分35秒-0600

Mysql2 ::錯誤(拒絕訪問用戶 '根' @ 'localhost' 的(使用密碼:否)):

奇怪的是,我沒有使用「root」作爲database.yml中的登錄信息...任何建議?問題/建議

development: 
    adapter: mysql2 
    encoding: utf8 
    reconnect: false 
    database: the_db_I_made 
    pool: 5 
    username: the_user_I_made 
    password: the_password 
    socket: /var/lib/mysql/mysql.sock 

production: 
    adapter: mysql2 
    encoding: utf8 
    reconnect: false 
    database: the_db_I_made 
    pool: 5 
    username: the_user_I_made 
    password: the_password 
    socket: /var/lib/mysql/mysql.sock 
+1

請加database.yml中的內容(過濾你的信息) – andrewpthorp 2011-12-30 02:25:34

回答

1

好吧,我想這是我的學習曲線:)的一部分

它結束了什麼是被這樣的:我安裝的原來是版本的寶石乘客3.0.9,我做了一個寶石更新 - 系統和安裝版本3.0.11。所以服務器認爲它使用的是3.0.11版本,我仍然在我的rails_server.conf文件中指向3.0.9的庫。我發現如何在http://blog.phusion.nl/

+1

不是隻指向Phusion的博客,而是指出一篇特定的文章或包含相關命令來升級Passenger以實際答案。 – 2017-02-17 16:29:41

4

束:

  1. 您可以連接到使用終端的數據庫?

    mysql -u root -p 
    
  2. 另外,你有沒有嘗試過這種開發模式?如果是這樣,請分享結果。

  3. 嘗試刪除

    socket: /var/lib/mysql/mysql.sock 
    
  4. 是創業板的安裝是否正確?

    gem check mysql2 
    

編輯:

有一個在開發和生產方式(包括但不限於,環境變量,例如數據庫連接字符串,資源預編譯,不同相差很多日誌記錄級別:錯誤頁面定製調試信息)

**尷尬!**

你有不包括你的配置中的「主機」屬性!

試試這個:

production: 
    adapter: mysql2 
    encoding: utf8 
    reconnect: false 
    host: your_host #<----- normally localhost 
    database: the_db_I_made 
    pool: 5 
    username: the_user_I_made 
    password: the_password 
    socket: /var/lib/mysql/mysql.sock 
+0

喜@ Varun的-沃赫拉! 1.我可以通過終端使用'mysql -u the_user -p the_db'連接並運行諸如「show tables」之類的命令。 2.我是新人,並沒有真正把我的腦袋纏住開發和生產模式之間的區別除了開發模式可能有更多的錯誤輸出或信息?似乎是遷移寫入development.log文件和http請求寫入production.log雖然.. 3.只是試圖消除插座:/var/lib/mysql/mysql.sock - 同樣的問題仍然.. 4.冉寶石檢查mysql2 - 沒有輸出剛回到新行..所以我想這是好的.. – 2011-12-30 08:18:08

+0

我已經添加主機屬性的database.yml - 還是一樣的錯誤。基本上,由於某些原因,mysql2寶石以爲我在試圖連接到這樣的「ü根 - P」數據庫......即使這不是我在database.yml文件.. – 2011-12-30 15:14:32

+0

我先刪除然後添加了套接字線,它的工作! – Eenvincible 2016-09-09 17:20:45

0
  1. 升級在Ubuntu中,1)在/ usr/bin中/在 終端mysql_secure_installation 2)運行按照步驟仔細更改MySQL密碼 here.Everything做。然後去改變的database.yml密碼 以前你創建的。運行rails服務器並檢查 應用程序。它會起作用
0

您是否創建了數據庫「the_db_I_made」

首先創建它,然後才運行它,否則它會持續顯示此錯誤。

現在嘗試調整它。

0

對於我這是因爲沒有數據庫給錯誤。所以我創建一個使用:

$耙分貝:創建

,問題就解決了:d

相關問題