cari

Rumah  >  Soal Jawab  >  teks badan

Selesaikan masalah sambungan antara Django Elastic Beanstalk dan RDS MySQL

<p>Saya cuba menyambungkan Django Elastic Beanstalk saya kepada RDS MySQL saya. Django saya berfungsi dengan baik dengan RDS MySQL saya melalui localhost, tetapi apabila saya cuba memuat naik Django saya ke Elastic Beanstalk saya mendapat ralat "Aplikasi penyebaran gagal" dan AWS menunjukkan ralat berikut. Projek saya mempunyai mysqlclient dalam requirements.txt seperti ditunjukkan di sini: </p> <p>https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create-deploy-python-rds.html</p> <p>Menurut halaman, ini sepatutnya mencukupi. Saya sudah tentu cuba mencari isu yang sama, tetapi setakat ini tidak berjaya. Saya perasan bahawa banyak soalan menyebut keperluan untuk mempunyai fail packages.config dalam folder .ebextensions dan saya mencuba banyak cadangan tersebut tanpa berjaya. Adakah ini masalah? Mengapa ini tidak disebut pada halaman AWS? </p> <pre class="brush:php;toolbar:false;">× python setup.py egg_info tidak berjaya dijalankan. │ kod keluar: 1 ╰─> /bin/sh: mysql_config: arahan tidak dijumpai /bin/sh: mariadb_config: arahan tidak dijumpai /bin/sh: mysql_config: arahan tidak dijumpai Traceback (panggilan terbaharu terakhir): Fail "<rentetan>", baris 2, dalam <modul> Fail "<pip-setuptools-caller>", baris 34, dalam <modul> Fail "/tmp/pip-install-r0dz9d2g/mysqlclient_f2b5c53e43a648c284b06f7af63d9855/setup.py", baris 15, dalam <modul> metadata, pilihan = get_config() Fail "/tmp/pip-install-r0dz9d2g/mysqlclient_f2b5c53e43a648c284b06f7af63d9855/setup_posix.py", baris 70, dalam get_config libs = mysql_config("libs") Fail "/tmp/pip-install-r0dz9d2g/mysqlclient_f2b5c53e43a648c284b06f7af63d9855/setup_posix.py", baris 31, dalam mysql_config naikkan OSError("{} not found".format(_mysql_config_path)) OSError: mysql_config tidak ditemui mysql_config --version mariadb_config --version mysql_config --libs [tamat output]</pre></p>
P粉716228245P粉716228245473 hari yang lalu620

membalas semua(1)saya akan balas

  • P粉777458787

    P粉7774587872023-08-29 13:37:05

    Jawab soalan anda sendiri. Kemudian saya bertanya soalan yang sama AWS Elastic Beanstalk RDS MacOS mysqlclient tidak berfungsi dan mendapat bantuan.

    Jawapannya memang fail packages.config, fail yang perlu dipasang melalui yum (sila rujuk pautan di atas). Terdapat masalah lain dalam kod saya, tetapi saya mendapat ralat yang sama seperti di atas, walaupun packages.config ditetapkan dengan betul. Saya menemui isu ini kerana saya cuba menetapkannya kembali ke pangkalan data SQLite dan memuat naik ke Elastic Beanstalk, tetapi ia tidak berjaya. (Maaf, saya tidak ingat kesilapan yang saya dapat, saya gugup, saya rasa ia adalah ralat "111: Sambungan ditolak".)

    Cara yang saya lakukan adalah dengan memadam semua fail konfigurasi dan mulakan semula dengan projek siap biasa dan ikuti tutorial (seperti yang saya lakukan sebelum ini): https://docs.aws.amazon.com /elasticbeanstalk/latest/ dg/create-deploy-python-django.html https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create-deploy-python-rds.html#python-rds-connect

    Dari situ, saya menambah fail packages.config dalam folder .ebextensions saya dengan kod berikut...

    packages: 
      yum:
        python3-devel: []
        mariadb-devel: []

    ...seperti yang dinyatakan dalam soalan saya yang lain yang dipautkan di atas, dan di sini: ralat pemasangan mysqlclient dalam AWS Elastic Beanstalk

    Saya juga memerlukan gunicorn dan Procfile, tetapi saya telah menyelesaikan masalah ini sebelum ini, tetapi jika anda berada di sini kerana masalah dengan Elastic Beanstalk dan RDS, ia patut disebut juga.

    Saya juga tidak faham sama ada saya boleh menggunakan yum dalam fail packages.config jika saya tidak mempunyai yum pada komputer saya, terutamanya kerana saya menggunakan MacOS dan menggunakan yum pada MacOS bukanlah perkara biasa. Soalan ini dijawab dalam soalan lain yang saya pautkan di atas, dan jawapannya ialah anda tidak perlu memasang yum pada mesin anda dalam kes ini kerana yum digunakan oleh pelayan Amazon Linux 2 Elastic Beanstalk dalam kes ini.

    balas
    0
  • Batalbalas