python manage.py makemigrations 异常

举报
Yuchuan 发表于 2020/09/23 20:55:58 2020/09/23
【摘要】 python 连接mysql数据库异常处理。

异常现象:

(RuralChinaENV) [yuchuan@MasterServer RuralChinaPro]$ python manage.py makemigrations
Traceback (most recent call last):
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/MySQLdb/__init__.py", line 18, in <module>
    from . import _mysql
ImportError: libmysqlclient.so.18: cannot open shared object file: No such file or directory
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "manage.py", line 15, in <module>
    execute_from_command_line(sys.argv)
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/django/core/management/__init__.py", line 381, in execute_from_command_line
    utility.execute()
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/django/core/management/__init__.py", line 357, in execute
    django.setup()
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/django/__init__.py", line 24, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/django/apps/registry.py", line 112, in populate
    app_config.import_models()
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/django/apps/config.py", line 198, in import_models
    self.models_module = import_module(models_module_name)
  File "/usr/lib64/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/django/contrib/auth/models.py", line 2, in <module>
    from django.contrib.auth.base_user import AbstractBaseUser, BaseUserManager
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/django/contrib/auth/base_user.py", line 47, in <module>
    class AbstractBaseUser(models.Model):
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/django/db/models/base.py", line 101, in __new__
    new_class.add_to_class('_meta', Options(meta, app_label))
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/django/db/models/base.py", line 305, in add_to_class
    value.contribute_to_class(cls, name)
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/django/db/models/options.py", line 203, in contribute_to_class
    self.db_table = truncate_name(self.db_table, connection.ops.max_name_length())
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/django/db/__init__.py", line 33, in __getattr__
    return getattr(connections[DEFAULT_DB_ALIAS], item)
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/django/db/utils.py", line 202, in __getitem__
    backend = load_backend(db['ENGINE'])
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/django/db/utils.py", line 110, in load_backend
    return import_module('%s.base' % backend_name)
  File "/usr/lib64/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/django/db/backends/mysql/base.py", line 15, in <module>
    import MySQLdb as Database
  File "/home/yuchuan/YuchuanData/PythonDjangoPro/DjangoDemoPro008/RuralChinaENV/lib64/python3.6/site-packages/MySQLdb/__init__.py", line 24, in <module>
    version_info, _mysql.version_info, _mysql.__file__
NameError: name '_mysql' is not defined

image.png

image.png

解决方案:

(RuralChinaENV) [yuchuan@MasterServer RuralChinaPro]$ export LD_LIBRARY_PATH=/usr/local/mysql/lib
(RuralChinaENV) [yuchuan@MasterServer RuralChinaPro]$ export LD_LIBRARY_PATH=/usr/local/mysql/lib
(RuralChinaENV) [yuchuan@MasterServer RuralChinaPro]$ ll
total 4
drwxrwxr-x 3 yuchuan yuchuan  93 Sep 22 22:46 RuralChinaPro
-rw-r--r-- 1 yuchuan yuchuan   0 Sep 22 22:04 db.sqlite3
-rwxrwxr-x 1 yuchuan yuchuan 545 Sep 22 22:03 manage.py
drwxrwxr-x 3 yuchuan yuchuan 123 Sep 22 22:03 minapps
(RuralChinaENV) [yuchuan@MasterServer RuralChinaPro]$ python manage.py makemingrations
Unknown command: 'makemingrations'. Did you mean makemigrations?
Type 'manage.py help' for usage.
(RuralChinaENV) [yuchuan@MasterServer RuralChinaPro]$ python manage.py makemigrations
No changes detected
(RuralChinaENV) [yuchuan@MasterServer RuralChinaPro]$ python manage.py migrate
Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying admin.0003_logentry_add_action_flag_choices... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying auth.0008_alter_user_username_max_length... OK
  Applying auth.0009_alter_user_last_name_max_length... OK
  Applying sessions.0001_initial... OK
(RuralChinaENV) [yuchuan@MasterServer RuralChinaPro]$
(RuralChinaENV) [yuchuan@MasterServer RuralChinaPro]$
(RuralChinaENV) [yuchuan@MasterServer RuralChinaPro]$ ll
total 4
drwxrwxr-x 3 yuchuan yuchuan  93 Sep 22 22:46 RuralChinaPro
-rw-r--r-- 1 yuchuan yuchuan   0 Sep 22 22:04 db.sqlite3
-rwxrwxr-x 1 yuchuan yuchuan 545 Sep 22 22:03 manage.py
drwxrwxr-x 3 yuchuan yuchuan 123 Sep 22 22:03 minapps
(RuralChinaENV) [yuchuan@MasterServer RuralChinaPro]$

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。