2017-09-27 5 views
0

매우 광범위한 질문에 실례 합니다만, 저는 서클에서 돌아 다니는 것처럼 보입니다.램프 설치 Django/MySQL 구성 문제를 해결하겠습니까?

데이터베이스를 사용하여 RP응용 프로그램을 빌드/개발하고 내 RPi에 호스팅하고 싶습니다. 그렇게 노력에서

, 나는했습니다 내가 (아파치는이 일이 될 것 같다) 그리고 나는 그들 사이에 인터페이스 할 수있는 application을 만드는 데 필요한하는 웹 서버이 필요하다는 것을 배운다.

처음

, 나는 인터페이스로 시도하고 응용 프로그램을 구축 할 파이썬와 Qt는을 사용하지만, 상황이 간단하지 않았다 것을 발견하고 나는 파이썬/MySQL의 커넥터 등

를 사용하는 데 사용

몇 주 후에, 나는 연결된 것들을 얻은 다음 그것의 건물에 대해 생각했습니다. Flask & Django와 같은 옵션이 프레임 워크로 인해 작업에 더 적합하다는 것이 분명 해졌습니다.

나는 그렇게 갈 줄하기로 결정하고, 내 자신의 서버에 자신의 PythonAnywhere.com 배포 예를 교체하기로 해결했다는 DjangoGurls 내가 그것을 통해 읽을 때 따라야하는 간단한 튜토리얼 발견 ... ....... 붙어.

랩톱/개발 환경에서 작동하는 것이 있지만 서버 쪽에서 작동하지 않습니다. 나는 그것이 와 함께 할 것을 알고 있습니다.config/settings/permissions/path 그러나 나는 그것을 지적 할 수 없습니다.

시도 할 수있는 많은 자습서와 명령어가 있습니다. 카운트를 잃어 버렸고 많은 것이 오래되어 보이지 않습니다.

나는 LAMP에 대해 혼란에 빠지기 시작했다. 처음에는 그 사실을 알고 있었으면 좋겠지 만 Django 나 Python은 포함되어 있지 않아서 PHP가 필요하다. PHPMyAdmin을 사용하여 을 관리하십시오.

내가 이미 가지고있는 것에 램프를 설치할 수 있습니까? 서버 측을 해결합니까 에 문제가 있습니까?

편집

나는 pymysql를 설치하기 위해 관리했습니다, 나는의 runserver하려고 할 때 다음과 같습니다 /test_blog_app/blogpip list 출력에서 ​​/etc/MySQL/my.cnf 에 설정 파서 오류가 (나는 그들의 대부분이 무엇인지 전혀 모른다) :

automationhat (0.0.4) 
blinker (1.3) 
blinkt (0.1.0) 
Cap1xxx (0.1.3) 
chardet (2.3.0) 
click (6.6) 
colorama (0.3.7) 
cryptography (1.7.1) 
drumhat (0.0.5) 
enum34 (1.1.6) 
envirophat (0.0.6) 
ExplorerHAT (0.4.2) 
Flask (0.12.1) 
fourletterphat (0.0.2) 
gpiozero (1.4.0) 
idna (2.2) 
ipaddress (1.0.17) 
itsdangerous (0.24) 
Jinja2 (2.8) 
keyring (10.1) 
keyrings.alt (1.3) 
lxkeymap (0.1) 
MarkupSafe (0.23) 
mcpi (0.1.1) 
microdotphat (0.1.3) 
mote (0.0.3) 
motephat (0.0.2) 
numpy (1.12.1) 
oauthlib (2.0.1) 
phatbeat (0.0.2) 
pianohat (0.0.5) 
picamera (1.13) 
picraft (1.0) 
piglow (1.2.4) 
pigpio (1.38) 
Pillow (4.0.0) 
pip (9.0.1) 
pyasn1 (0.1.9) 
pycrypto (2.6.1) 
pygame (1.9.3) 
pygobject (3.22.0) 
pyinotify (0.9.6) 
PyJWT (1.4.2) 
PyMySQL (0.7.11) 
pyOpenSSL (16.2.0) 
pyserial (3.2.1) 
pyxdg (0.25) 
rainbowhat (0.0.2) 
requests (2.12.4) 
requests-oauthlib (0.7.0) 
RPi.GPIO (0.6.3) 
RTIMULib (7.2.1) 
scrollphat (0.0.7) 
scrollphathd (1.0.1) 
SecretStorage (2.3.1) 
sense-emu (1.0) 
sense-hat (2.2.0) 
setuptools (33.1.1) 
simplejson (3.10.0) 
six (1.10.0) 
skywriter (0.0.7) 
sn3218 (1.2.7) 
spidev (3.0) 
touchphat (0.0.1) 
twython (3.4.0) 
urllib3 (1.19.1) 
Werkzeug (0.11.15) 
wheel (0.29.0) 

답변

0

질문은 LAMP를 설치하면 MySQL/Django 구성 문제를 해결할 수 있었으며 대답은 '아니오'였습니다. 상단에 램프를 설치하면 작업이 더욱 복잡해졌습니다.

1 - 나는 아무것도를 설치하는 데 어려움을 겪고 있었다 주로하기 때문에 (PyMySQL보다는 MySQLdb를 설치
2 -. 각종 가이드에 따라)과 조정 및 오타를 고정 조금 후에 my.cnf 파일에 설정 MySQL을 (, . 그
3 작동 표시 - 검사 MySQL을, 그리고 장고 데이터는 ...... 지금까지 내가, 장고 이제 MySQL 데이터베이스를 사용하고 볼 수있는 관련 DB/테이블

에있다

이제 포트 번호를 사용하지 않고 Django를 지원할 수 있도록 apache2를 올바르게 구성하는 방법을 알아야합니다. 다양한 자습서/명령을 시도했지만 아직 성공하지 못했으므로 다른 질문을 게시 할 것입니다.

가장 큰 조언 - 항상 여기에서 자습서 (또는 답변) 날짜를 확인하고 항상 가장 최근의 것을 사용하십시오. 구식 인 튜토리얼에 이어 수많은 시간을 보냈습니다.

0

달성하고자하는 목적으로 램프 스택을 사용하지 않는 것이 좋습니다. 이미 Python을 프로그래밍 언어로 선택했고 django를 애플리케이션의 프레임 워크로 선택했습니다.

이제 sysadmin 부분을 직면해야합니다. MySQL에 관해 읽으면서 PHP를 기반으로하는 데이터베이스 서버의 그래픽 사용자 인터페이스 인 phpmyadmin을 종종 읽습니다. 그것을 사용하고 싶다면 PHP가 필요하지만 다른 도구를 사용하여 MySQL 데이터베이스를 관리 할 수도 있습니다. 예 :명령 줄 클라이언트는 mysql 또는 MySQL Workbench으로 데스크탑에 설치합니다.

데이터베이스의 세계로 diggin을 시작하면 발견 할 점이 많습니다. 그러나 망설이지 말라. 공식 문서는 꽤 좋은 getting started 부분을 가지고 있습니다. 서버를 시작/중지하는 방법과 사용자 및 권한을 관리하는 방법을 알아야합니다. 장고는 보통 다른 모든 일을 처리합니다. 물론 SQL과 데이터베이스 서버에 대한 더 깊은 지식을 얻는 것이 유용하지만 처음에는 필요하지 않으며 위에서 설명한 것 이상을 모르는 많은 개발자가 있습니다.

또한 RPi에서 sqlite를 사용할 수도 있습니다. 이것은 장고와 잘 어울리는 파일 기반 데이터베이스이며 유지 관리가 매우 쉽습니다. 높은로드 및 방대한 양의 데이터를 예상하지 않으면 일반적으로 사용자의 요구에 잘 맞아야합니다. 그리고 데이터베이스 서버를 설치하고 유지 보수 할 필요가 없습니다.

마지막으로 django 앱을 제공하는 웹 서버가 필요합니다. 장고를 개발하는 동안 당신의 인생을 쉽게 만드는 서버의 빌드를 제공합니다. 그러나 서버 (또는 RPi)에 앱을 설치할 때 실제 서버를 선택해야합니다. 나는 파이썬 프로젝트를 위해 nginx + uwsgi를 선호한다. 물론 좋은 apache2를 사용할 수 있습니다. django documentation은 구성과 관련하여 시작할 때 좋습니다.

+0

응답 해 주셔서 감사합니다. 나는 docs를 통해 좋은 모습을 보였고 몇 가지 udemy 코스를 마쳤으며 일부 디지털 ocean 튜토리얼을 따랐다. 기본적으로 처음부터 새로운 설치로 시작했지만 여전히 얻을 수있다. django.core.exceptions.ImproperlyConfigured : MySQLdb 모듈로드 오류 : 'MySQLdb'라는 모듈이 없습니다. mysqlclient 또는 MySQL-python을 설치 했습니까? 의지를 놓치지 마십시오! 장고 및 MySQL을 RPi 또는 다른 것으로 사용할 수 있습니까? SQLite3을 통해 MySQL을 사용해야하는 이유는 두 가지가 하나의 '사용자'가 쓰는 것입니다. – JusticeEmpire

+0

mysql을위한 파이썬 바인딩을 놓친 것처럼 보입니다. [mysqlclient] (https://github.com/PyMySQL/mysqlclient-python)를 사용하는 것이 좋습니다 - IMO 설정하기 쉽습니다. github 페이지의 README에는 lib 자체와 필요한 바이너리를 OS에 설치하는 방법이 나와 있습니다. – dahrens

+0

나는 그것을 설치하려했지만 성공하지 못했습니다. 그것은 다시 시작하기 전에 내가 가진 것과 같은 문제입니다. – JusticeEmpire