доступ запрещен для python manage.py syncdb - PullRequest
0 голосов
/ 19 февраля 2012

Я следую учебному пособию по Django и купил 1-месячную подписку на webfaction.com, чтобы попрактиковаться в веб-программировании.

В руководстве рассказывается, как набрать 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

Ответы [ 3 ]

1 голос
/ 19 февраля 2012

Таким образом, все базы данных 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': '',
    }
}

Отредактировано для предоставления информации о том, как запустить django на веб-фракции, а не на локальном компьютере

Вы не можете получить доступ к базе данных веб-фракций извне, если только вы неплатить за статический IP-адрес.Похоже, вы запускаете учебник по Django на локальном компьютере, а не в Webfaction (в зависимости от того, где ваш проект - диск D).

  1. Убедитесь, что вы создали базу данных в панели управления Webfaction с любым именем из 4 символов после «flammenmeer_», которое вы хотите, например, «flammenmeer_test»

  2. Загрузить Putty (самая первая ссылка "Putty.exe" на этой странице)

  3. В Putty подключиться к flammenmeer @ [machineимя] .webfaction.com (имя компьютера будет примерно таким, как «web312» и будет тем же компьютером, на котором вы создали базу данных. Ваш конечный продукт может выглядеть примерно как flammenmeer@web312.webfaction.com

  4. Установите Django на свой аккаунт webfaction

    • Введите "easy_insall-2.7 django"
  5. Создайте каталог для ваших скриптов django

    • Тип "mkdir scripts"
    • Тип "cd scripts"
  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:)

Надеюсь, это поможет.

0 голосов
/ 19 февраля 2012

Вы не можете получить доступ к серверу базы данных webfaction с компьютера Windows, поэтому вы сталкиваетесь с этими проблемами.

Для практики с django вам не нужен сервер базы данных или веб-сервер.

Сначала установите django. Поскольку вы работаете в Windows, используйте эту ссылку , чтобы загрузить установщик Windows для django.

Установите его так же, как и любую другую программу 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

Это создаст каталог myproject в work.

Отредактируйте файл 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 мой любимый. Это Python IDE для Windows, которая включает отличную поддержку django. Вы можете скачать бесплатную пробную версию.

После установки просто откройте каталог myproject из IDE.

0 голосов
/ 19 февраля 2012

Потому что информация для подключения к базе данных неверна. просто проверьте это вовремя больше.

Вы уверены, что в конце имени пользователя есть подчеркивание, это кажется немного странным

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...