簡體   English   中英

拒絕訪問python manage.py syncdb

[英]access denied for python manage.py syncdb

我正在閱讀Django教程,並購買了1個月的webfaction.com訂閱以練習一些Web編程。

本教程告訴我在應用程序目錄中鍵入python manage.py syncdb ,對我來說是:D:\\ Users \\ yangs \\ Downloads \\ Django-1.3.1 \\ Django-1.3.1 \\ build \\ scripts-2.7 \\ mysite

但是我收到一條錯誤消息,內容為:

_msql_exceptions.OperationalError: (1045, "Access denied for user 'flammenmeer_'@'c-68-38-119-33.hsd1.nj.comcast.net' (using password: YES)")

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',   # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': 'flammenmeer_',                 # Or path to database filw
        'USER': '',                             # Not used with sqlite3.
        'PASSWORD': 'my_password',              # Not used with sqlite3.
        'HOST': 'flammenmeer.webfactional.com', # Set to empty string for localhost. Not used with sqlite3.
        'PORT': '',                             # Set to empty string for default. Not used with sqlite3.
        'USER': 'flammenmeer_',
    }
}

誰能告訴我為什么我收到此錯誤消息? 先感謝您!

編輯:我也嘗試過:

  • 主機的web329.webfaction.com
  • 我創建了一個沒有下划線的新數據庫,名為flammenmeer

因此,所有的Webfaction數據庫都將命名為[account name] _aname,整個內容必須少於16個字符。 因此,如果您的用戶名是“ flammenmeer”,則您已經使用了12個字符,包括下划線。 因此,以您的示例為例,假設您在管理面板中創建了一個名為“ test”的數據庫,您的數據庫名稱將為flammenmeer_test。 另外,您的用戶名與數據庫名稱相同。 最后,您不需要定義主機,本地主機默認值就足夠了。

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'flammenmeer_test',
        'USER': 'flammenmeer_test',
        'PASSWORD': 'blahblahblah',
        'HOST': '',
        'PORT': '',
    }
}

編輯以提供有關如何在Webfaction而非本地計算機上運行django的信息

除非您為靜態IP地址付費,否則無法從外部訪問Webfaction數據庫。 聽起來您正在本地計算機上而不是Webfaction上運行Django教程(基於項目所在的位置為D驅動器)。

  1. 確保已在Webfaction控制面板中創建了一個數據庫,並在“ flammenmeer_”之后使用了任意4個字符的名稱,例如“ flammenmeer_test”

  2. 下載Putty (該頁面上的第一個“ Putty.exe”鏈接)

  3. 在Putty中,連接到flammenmeer @ [計算機名稱] .webfaction.com(計算機名稱類似於“ web312”,並且與在其上創建數據庫的計算機相同。最終產品可能類似於flammenmeer@web312.webfaction .com

  4. 在您的webfaction帳戶上安裝Django

    • 輸入“ easy_insall-2.7 django”
  5. 為您的Django腳本創建目錄

    • 鍵入“ mkdir腳本”
    • 輸入“ cd腳本”
  6. 創建一個新的Django項目

    • 輸入“ python2.7〜/ lib / python2.7 / django / bin / django-admin.py startproject ruhemeer”
    • 輸入“ cd ruhemeer”
  7. 編輯您的設置(您將要學習VIM

    • 輸入“ vim settings.py”
    • 點擊字母“ i”進入編輯/插入模式
    • 使用箭頭鍵導航到數據庫設置並修改設置
    • 點擊“ Esc”退出編輯/插入模式
    • 輸入“:wq [enter]”
  8. 進行Django教程:)

希望能有所幫助。

因為,連接數據庫的信息不正確。 只是按時檢查一下。

您確定用戶名的末尾有一個下划線,這看起來有點奇怪

您無法從Windows計算機訪問Webfaction數據庫服務器,這就是您遇到這些問題的原因。

要練習django,您不需要數據庫服務器或Web服務器。

首先,安裝django。 由於您使用的是Windows,請使用此鏈接下載django的Windows安裝程序。

就像安裝其他Windows程序一樣安裝它。

現在,開始您的項目:

  1. 打開命令提示符。 鍵入Windows鍵+ R彈出運行提示,鍵入cmd並按Enter。

  2. 創建一個您要在其中工作的目錄。 例如, mkdir c:\\work

  3. 切換到該目錄cd work因此您的提示是C:\\work>

  4. 鍵入python C:\\Python27\\Scripts\\django-admin.py startproject myproject

這將在work下創建myproject目錄。

編輯settings.py文件,並對DATABASES進行以下更改:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': 'test.db',                      # Or path to database file if using sqlite3.
        'USER': '',                      # Not used with sqlite3.
        'PASSWORD': '',                  # Not used with sqlite3.
        'HOST': '',                      # Set to empty string for localhost. Not used with sqlite3.
        'PORT': '',                      # Set to empty string for default. Not used with sqlite3.
    }
}

在Windows中工作有助於擁有IDE。 PyCharm是我的最愛。 它是Windows的Python IDE,其中包括對django的出色支持。 您可以下載免費試用版。

安裝完成后,只需從IDE中打開目錄myproject

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM