2012-02-19 3 views
0

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

В учебнике рассказывается, как я набираю 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

ответ

1

Так все базы данных webfaction будет называться [имя учетной записи] _aname и все это должно быть до 16 символов , Поэтому, если ваше имя пользователя «flammenmeer», у вас уже есть 12 символов, включая подчеркивание. Итак, для вашего примера давайте притворимся, что вы создаете базу данных в панели администратора с именем «test», имя вашей базы данных будет flammenmeer_test. Кроме того, ваше имя пользователя совпадает с именем базы данных. И, наконец, вам не нужно определять хост, по умолчанию для localhost будет достаточно.

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

Edited предоставить информацию о том, как запустить Джанго на webfaction, а не локальный компьютер

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

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

  2. Download Putty (самый первый Ссылка «Putty.exe» на этой странице)

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

  4. Установка Django на вашем webfaction счет

    • типа «easy_insall-2.7 Джанго»
  5. Создать каталог для ваших Джанго сценариев

    • Тип "MKDIR скрипты"
    • типа "CD сценариев"
  6. Создать новый Django Project

    • Тип "python2.7 ~/lib/python2.7/dj Анго/бен/django-admin.py startproject ruhemeer "
    • Тип "CD ruhemeer"
  7. Редактировать настройки (вы будете хотеть, чтобы узнать VIM

    • типа" настройки VIM. ру»
    • Хит букву„я“, чтобы войти в режим редактирования/вставки
    • Используйте клавиши со стрелками, чтобы перейти к настройкам базы данных и изменять настройки
    • Hit "Esc", чтобы выйти из режима редактирования/вставки
    • Тип ": WQ [войти]"
  8. Продолжите с Джанго Tutorial :)

Надежда, что помогает.

+0

Спасибо за ответ. Я попытался создать базу данных с именем «Flammenmeer_test», но я все равно получаю то же сообщение об ошибке. Как manage.py знает, где находится мое приложение? –

+0

Я отредактирую свой ответ с более подробной информацией ... – bwooceli

+0

Итак, я сделал кое-что, и узнал, что могу использовать SSH? для доступа к моим данным. Я попал в каталог с именем «myproject», и я хочу получить доступ к settings.py, чтобы я мог редактировать его со всей информацией. Как мне открыть файл для редактирования? –

0

Так, информация для подключения к базе данных неверны. просто проверьте его вовремя.

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

+0

Я уверен за все, кроме HOST. Я создал базу данных с именем flammenmeer_ и сказал, что они создали пользователя для базы данных с именем «flammenmeer_». Поэтому я предполагаю, что это то же самое для имени базы данных и имени пользователя. Нужен ли порт для чего-то подобного? –

+0

Хорошо, но предоставили ли вы доступ к базе данных пользователю? – lpostula

+0

Да, после создания базы данных он говорит: база данных MySQL «flammenmeer_» была создана. Пользователь «flammenmeer_» был создан (пароль по умолчанию «blahblahblah» и имеет разрешения на работу в новой базе данных. –

0

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

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

Во-первых, установите django. Поскольку вы находитесь в Windows, используйте this link для загрузки установщика Windows для django.

Установите его так же, как и любую другую программу Windows.

Теперь, чтобы начать свой проект:

  1. Откройте командную строку. Введите ключ Windows + R, чтобы вызвать приглашение «Запуск», введите cmd и нажмите «Ввод».

  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.

Смежные вопросы