Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL连接器/python在django中不工作_Python_Mysql_Django_Mysql Python_Mysql Connector - Fatal编程技术网

MySQL连接器/python在django中不工作

MySQL连接器/python在django中不工作,python,mysql,django,mysql-python,mysql-connector,Python,Mysql,Django,Mysql Python,Mysql Connector,我正在学习以MySQL为后端的Django。我安装了Oracle的mysql连接器来连接mysql。但是,当我运行python manage.py时,出现了这个错误 回溯(最近一次呼叫最后一次): 文件“C:\Python33\lib\site packages\django\db\backends\mysql\base.py”,第14行,在 将MySQLdb作为数据库导入 ImportError:没有名为“MySQLdb”的模块 这有点奇怪。我在想,如果我安装了mysql连接器/python,

我正在学习以MySQL为后端的Django。我安装了Oracle的mysql连接器来连接mysql。但是,当我运行
python manage.py
时,出现了这个错误

回溯(最近一次呼叫最后一次): 文件“C:\Python33\lib\site packages\django\db\backends\mysql\base.py”,第14行,在 将MySQLdb作为数据库导入 ImportError:没有名为“MySQLdb”的模块

这有点奇怪。我在想,如果我安装了mysql连接器/python,我就不再需要MySQLdb了

有人能解释一下吗?谢谢

我的数据库设置:

DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME': "djangolearn",
    'USER': 'root',
    'PASSWORD': '',
    'HOST': '127.0.0.1',
    'PORT': '3306',
}}

如果您使用的是Oracle的连接器,则需要使用其Django db后端


请参阅。

尝试:pip安装mysql-python

如果不起作用:确保可以连接到数据库(使用phpmyadmin或mysql workbench进行测试)

}

对于在django中工作的MySQL连接器,请尝试以下操作:

或者为在django中工作的MySQL连接器池尝试以下操作:


谢谢我也看到了。从8.0.13版开始的mysql-connector-python有一个bug,这使得它无法与Django一起使用:为了避免这个bug,在数据库选项中添加选项
'use_pure':True
# for mysql connector use this

DATABASES = {
'default': {
    'ENGINE': 'mysql.connector.django',
    'NAME': 'dbname',               
    'USER': 'user',
    'PASSWORD': '',
    'HOST': '127.0.0.1',
    'PORT': '3306',
},
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'djangolearn',
        'USER': 'root',
        'PASSWORD': '',
        'HOST': '127.0.0.1',
        'PORT': '3306',
    }
}
DATABASES = {
    'default': {
        'ENGINE': 'PyMysqlPool.mysql.connector.django',
        'NAME': 'djangolearn',
        'USER': 'root',
        'PASSWORD': '',
        'HOST': '127.0.0.1',
        'PORT': '3306',
        'OPTIONS': {
            'autocommit': True,
            'pool': {
                #use = 0 no pool else use pool
                "use":0,
                # size is >=0,  0 is dynamic pool
                "size":10,
                #pool name
                "name":"local",
            }
        },
    }
}