【问题标题】:How To Install Django CMS with MySQL如何使用 MySQL 安装 Django CMS
【发布时间】:2014-07-21 16:44:32
【问题描述】:

有人可以解释一下如何使用 mySQL 安装 django cms,我按照

的说明进行操作

https://github.com/divio/django-cms-tutorial/blob/master/Step%201%20-%20Initial%20Setup.md

并使用 sqllite3 成功安装了 django-cms,但是当我尝试使用 mySQL 时出现错误。

Django CMS 安装过程询问:

数据库配置(以 URL 格式)[默认 sqlite://localhost/project.db]:如果我按 Enter 它将使用 sqlite 安装它,我需要输入什么来安装它MySQL

我试过mysql://localhost/django_db

但它不会工作..

【问题讨论】:

    标签: django django-cms


    【解决方案1】:

    当我进入安装程序的那个部分时,我使用了这种连接字符串样式,它对我有用:

    mysql://username:password@hostname/schema_name
    

    【讨论】:

    • 您必须将密码用引号括起来吗?这对我不起作用,但我可以连接到 mysql 没问题
    • @DanielTate 密码不能包含空格,也可能包含其他字符。对不起,这已经一年多了。我不想回答,除非我先自己测试了它,然后我才开始玩它。我尝试使用密码“super duper awesome”,无论我如何尝试,反斜杠转义,密码周围的引号等,它总是失败。我最好的建议是将 MySQL 服务器上的密码设置为 DjangoCMS 向导可以接受的密码,然后在服务器上和位于应用程序包中的 settings.py 文件中的 DATABASES 字典中更改它。
    【解决方案2】:

    我遇到了同样的问题并使用了@Tarek Kalaji 的方法。

    我的配置: 主机 Ubuntu 18.04, 点 19.2.3, djangocms-installer 1.2.0rc1, djangocms 3.6, django 2.1

    我首先使用默认数据库设置通过安装程序安装了 djangocms,因为此时所有其他对 mysql 的尝试都失败了。

    然后我按照建议编辑了 settings.py,将 sqlite 设置替换为:

    DATABASES = {
        'default':
            {
                'ENGINE': 'django.db.backends.mysql',
                'NAME': 'mytestdb',
                'HOST': 'localhost', 
                'USER': 'root', 
                'PASSWORD': 'mysqlpassword', 
                'PORT': ''
            }
    }
    

    我实际上在虚拟机中使用了一个 mysql 服务器,并在其中创建了一个新的空数据库(例如 mytestdb)。

    以前更改“数据库”设置对我来说失败了。我想是因为我已经将内容迁移到了 sqlite 数据库中。我建议在任何“python manage.py migrate”调用之前一开始就设置 mysql 数据库。当然,我猜想也可以使用数据库转储来转移内容,但我没有将数据从 sqlite 迁移到 mysql(或任何其他 SQL)的经验。

    但是,在我的情况下,以下步骤要简单得多。它们基本上正是任何 django mysql 用例所需要的。

    pip install mysqlclient
    

    pythong manage.py migrate
    

    就是这样。

    我花了很长时间才弄清楚这一点。因此,我认为发一个新帖子是个好主意。

    【讨论】:

      【解决方案3】:

      你可以使用默认的sqllite安装它,并创建一个空数据库,示例名称为'mytestdb',安装后你可以直接更改settings.py

      DATABASES = {
          'default':
              {
                  'ENGINE': 'django.db.backends.mysql', #.sqlite3
                  'NAME': 'mytestdb',
                  'HOST': 'localhost', 
                  'USER': 'root', 
                  'PASSWORD': 'mysqlpassword', 
                  'PORT': ''
              }
      }
      

      用django连接mysql

      sudo apt-get install git          # to install git
      
      sudo apt-get install python-pip   # to install pip
      
      sudo pip install Django           # to install Django to your system
      

      之后你应该去项目路径,然后执行以下命令,'manage.py'文件的相同路径

      pip install mysql-python
      

      最后你可以毫无问题地同步你的数据库

      python manage.py syncdb
      

      这是同样的问题here希望对你有帮助...

      【讨论】:

        【解决方案4】:

        在我按照手工处方安装 Djangocms 之前,没有什么对我有用,这里可以找到:

        Manual installation of djangocms

        它对我有用,只需按照所有步骤操作即可。

        【讨论】:

          猜你喜欢
          • 2014-09-21
          • 2014-04-13
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-12-21
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多