如何更改settings.py以从SQLite3 db迁移到mysql db?

时间:2012-01-24 16:15:01

标签: python mysql django sqlite database-migration

我在settings.py和local settings.py中包含以下内容:

DATABASES = {
    'default': {
        # The last part of ENGINE is 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'ado_mssql'.
        'ENGINE': 'django.db.backends.mysql', 
        'NAME': 'mydbname'
    'USER': 'myroot',    # Not used with sqlite3.      
        'PASSWORD': '123',        
    }
}

DATABASE_OPTIONS = { "init_command": 'SET NAMES "utf8"' ,  "init_command":'SET storage_engine=INNODB' , }

但是当我尝试运行服务器时出现以下错误:

追踪(最近一次通话):   文件" manage.py",第20行,in     导入设置#假设在同一目录中。   文件" /usr/home/mydir/settings.py" ;,第23行     '用户':' myroot',#不与sqlite3一起使用。           ^ SyntaxError:语法无效

我很困惑,因为我已经指定我使用的是mysql。由于我之前使用的是sqlite3,是否还有其他/其他设置/数据库路由层次结构缺少?

2 个答案:

答案 0 :(得分:4)

您在NAME行的末尾错过了一个逗号。

另外,修复你的缩进。

答案 1 :(得分:0)

最后使用逗号,并确保安装python-mysql(mysqldb)插件。