新しいDjangoプロジェクトとのconfigureクラウドサーバ(CentOSのシステム7.6)上のMySQLデータベース

、最近、テンセント雲が長い時間のためのクラウドサーバー、バイオリンに展開されるDjangoのプロジェクトを考え、+年間クラウドサーバーのドメイン名を借り月5元を費やして、私たちは、構成セクションのクラウド環境を実現することができました。

ディレクトリ

python3のインストール

YUMの構成

MySQLデータベースのインストール

新しいDjangoのプロジェクト

Djangoプロジェクト設定のmysql

クラウドサーバーDjangoのプロジェクトに地元のスタートをチェック


python3のインストール

CentOS 7.6は、Pythonの2.7.5バージョン付属してい

[root@VM_0_3_centos ~]# python -V
Python 2.7.5

まず、のpython3をインストール

[root@VM_0_3_centos ~]# yum install python3

表示用のpython3バージョン

[root@VM_0_3_centos ~]# python3 -V
Python 3.6.8

pythonの既存のソフトの接続を確認し、最初のpython3へのpythonの接続に(ショートカットウィンドウシステムに対して類似の)接続を設定します。

[root@VM_0_3_centos ~]# ll /bin/python*
lrwxrwxrwx 1 root root     7 Nov  5 23:09 /bin/python -> python2
lrwxrwxrwx 1 root root     9 Nov  5 23:09 /bin/python2 -> python2.7
-rwxr-xr-x 1 root root  7216 Aug  7  2019 /bin/python2.7
lrwxrwxrwx 1 root root     9 Apr  7 10:07 /bin/python3 -> python3.6
-rwxr-xr-x 2 root root 11408 Aug  8  2019 /bin/python3.6
-rwxr-xr-x 2 root root 11408 Aug  8  2019 /bin/python3.6m

オリジナルのパイソンソフトの接続削除のpython3.6に接続設定

[root@VM_0_3_centos ~]# rm /bin/python
rm: remove symbolic link ‘/bin/python’? y
[root@VM_0_3_centos ~]# ln -s /bin/python3.6 /bin/python

再度、ソフトパイソンで確認できますチェックpython3.6へ接続していました

[root@VM_0_3_centos ~]# ll /bin/python
lrwxrwxrwx 1 root root 14 Apr  7 10:17 /bin/python -> /bin/python3.6

同じ方法は、PIP3 PIP可撓性コネクタに提供することができます

[root@VM_0_3_centos ~]# ln -s /bin/pip3 /bin/pip
[root@VM_0_3_centos ~]# ll /bin/pip
lrwxrwxrwx 1 root root 9 Apr  7 10:33 /bin/pip -> /bin/pip3

YUMの構成

遭遇、最初のピットのインストールおよび設定のpython3ソフトの接続の後、私はyumを使用しないことが判明します

[root@VM_0_3_centos ~]# yum
  File "/usr/bin/yum", line 30
    except KeyboardInterrupt, e:
                            ^
SyntaxError: invalid syntax

ヤム元々、VIのエディタを介しので変化バックに、python3.6バージョンを使用YUM得ソフトパイソンの接続の変更後、python2.7デフォルトのバージョンで最初行プレーンズの特定方法を使用いくつかのPythonのアドオンの「2」は、保存および終了後

#!/usr/bin/python2
import sys
try:
    import yum
except ImportError:
    print >> sys.stderr, """\
...
...
...

一方のファイル「/ USR / libexecに/ urlgrabber-EXT・ダウン」また同じ変更を作成する必要があり

#! /usr/bin/python2
#  A very simple external downloader
#  Copyright 2011-2012 Zdenek Pavlas
...
...
...

MySQLデータベースのインストール

YUMダウンロードすると、リポジトリ、ビュー既存のソフトウェアライブラリのソフトウェアパッケージのインストール

[root@VM_0_3_centos ~]# ll /etc/yum.repos.d/
total 8
-rw-r--r-- 1 root root 614 Apr  7 13:27 CentOS-Base.repo
-rw-r--r-- 1 root root 230 Apr  7 13:27 CentOS-Epel.repo

あなたは、MySQLのYumリポジトリを(確認できます追加する必要はまず、公式サイトのチュートリアルを

[root@VM_0_3_centos ~]# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

Viewソフトウェア・ライブラリは、再度二つ以上を発見し

[root@VM_0_3_centos ~]# ll /etc/yum.repos.d/
total 16
-rw-r--r-- 1 root root  614 Apr  7 13:45 CentOS-Base.repo
-rw-r--r-- 1 root root  230 Apr  7 13:45 CentOS-Epel.repo
-rw-r--r-- 1 root root 2076 Apr 25  2019 mysql-community.repo
-rw-r--r-- 1 root root 2108 Apr 25  2019 mysql-community-source.repo

すべての関連mysqlのパッケージがインストールされているのrpm -qa ...ビューを通じて同時に、唯一のショーの結果があり

[root@VM_0_3_centos HelloWorld]# rpm -qa mysql*
mysql80-community-release-el7-3.noarch

今やYUMのmysql-コミュニティサーバをインストール介してコマンドでないだけインストールされ、MySQLサーバは、追加パッケージをインストールインストールできる必要があり

[root@VM_0_3_centos ~]# yum install mysql-community-server

インストール後、使用ます。rpm -qa mysqlの* Viewは、5つのパッケージにそれぞれ新規インストールを発見しました

[root@VM_0_3_centos ~]# rpm -qa mysql*
mysql80-community-release-el7-3.noarch
mysql-community-libs-8.0.19-1.el7.x86_64
mysql-community-libs-compat-8.0.19-1.el7.x86_64
mysql-community-common-8.0.19-1.el7.x86_64
mysql-community-client-8.0.19-1.el7.x86_64
mysql-community-server-8.0.19-1.el7.x86_64

オープンmysqlの

[root@VM_0_3_centos HelloWorld]# systemctl start mysqld.service

mysqld.log年後、rootユーザの初期パスワードを生成し、

[root@VM_0_3_centos ~]# cat /var/log/mysqld.log | grep password
2020-04-07T07:00:22.584068Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: IbHxyweP/2cx

MySQLを着陸することは、対応するパスワードを入力してください

[root@VM_0_3_centos ~]# mysql -uroot -p

パスワード変更に必要性を示唆ほかの操作の間に、

mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

「!Tianwan3」変更を行うためにプロンプ​​トに従って変更パスワードを指定し

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Tianwan3!';   
Query OK, 0 rows affected (0.01 sec)

新規データベースのHelloWorld、Djangoプロジェクト、バックアップのために予約しました。

mysql> CTEATE DATABASE HelloWorld;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CTEATE DATABASE HelloWorld' at line 1
mysql> CREATE DATABASE HelloWorld;
Query OK, 1 row affected (0.02 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| HelloWorld         |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

新しいDjangoのプロジェクト

まずPIPジャンゴのインストール

[root@VM_0_3_centos ~]# pip install django

家庭で/カタログにし、CD、新しいHelloWorldプロジェクト

[root@VM_0_3_centos ~]# cd /home/
[root@VM_0_3_centos home]# django-admin startproject HelloWorld

、ツリービュー事業構造入力します(なしツリーを、最初はyum木のインストールをインストールことができます)

[root@VM_0_3_centos home]# tree
.
`-- HelloWorld
    |-- HelloWorld
    |   |-- asgi.py
    |   |-- __init__.py
    |   |-- settings.py
    |   |-- urls.py
    |   `-- wsgi.py
    `-- manage.py

2 directories, 6 files

事業HelloWorldのCDには、Pythonのmanange.pyののrunserver開始に入ります

[root@VM_0_3_centos HelloWorld]# python manage.py runserver
...
...
...
django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or later is required (found 3.7.17).

結果はsqliteのは3.7.17であると、CentOSの7.6が来るsqliteの低いバージョン(sqliteのは、既定で使用したプロジェクトジャンゴ軽量データベースで)ので、与えられ示し、

[root@VM_0_3_centos HelloWorld]# rpm -qa sqlite*
sqlite-3.7.17-8.el7.x86_64

一つの解決策は、関連する規範ファイルでコメントアウトすることができる「/usr/local/lib64/python3.6/site-packages/django/db/backends/sqlite3/base.py」意志

...
...
...
#def check_sqlite_version():
#    if Database.sqlite_version_info < (3, 8, 3):
#        raise ImproperlyConfigured('SQLite 3.8.3 or later is required (found %s).' % Database.sqlite_version)


#check_sqlite_version()
...
...
...

runserver再びのpython manage.pyを入力し、打ち上げ成功!

[root@VM_0_3_centos HelloWorld]# python manage.py runserver
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).

You have 17 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.

April 07, 2020 - 06:48:35
Django version 3.0.5, using settings 'HelloWorld.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

Djangoプロジェクト設定のmysql

、サードパーティライブラリpymysqlをインストールに最初の必要性

[root@VM_0_3_centos HelloWorld]# pip install pymysql

__init__.pyでインポートpymysqlサブディレクトリのHelloWorldプロジェクト

import pymysql
pymysql.install_as_MySQLdb()

次のようにsettings.py内のサブディレクトリのHelloWorldにデータベースを変更し、初期設定は次のとおりです。

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

変更後は次のとおりです。

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'HelloWorld',
        'USER': 'root',
        'PASSWORD': 'Tianwan3!',
        'PORT': '3306',
        'HOST': '',
    }
}

スタートプロジェクト、エラーは、ミスは、問題の以前のバージョンに似てsqliteの問題で見つけることができます

[root@VM_0_3_centos HelloWorld]# python manage.py  runserver
...
...
...
django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.

ファイル/usr/local/lib64/python3.6/site-packages/django/db/backends/mysql/base.pyを開いて、当社は以下2行をコメントアウト

#if version < (1, 3, 13):
#    raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)

やり直す、成功!

[root@VM_0_3_centos HelloWorld]# python manage.py  runserver
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).

You have 17 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, ses
sions.
Run 'python manage.py migrate' to apply them.

April 07, 2020 - 07:33:01
Django version 3.0.5, using settings 'HelloWorld.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

クラウドサーバーDjangoのプロジェクトに地元のスタートをチェック

クラウドサーバー上でプロジェクトが開始

[root@VM_0_3_centos HelloWorld]# python manage.py  runserver 0.0.0.0:8000

ローカルブラウザ入力62.234.83.169:8000(パブリック・クラウドサーバのIP +ポート番号)、結果はALLOWED_HOSTSに.234.83.169 '62」へのニーズを示唆し、与えられています

settings.pyにVIリットルを開き、プロジェクトのHelloWorldサブディレクトリが使用してクラウドサーバは、IPを追加します

ALLOWED_HOSTS = ['62.234.83.169']

クラウドサーバープロジェクトは、再びローカルブラウザの更新、成功を開始しています!

 

リリース29元記事 26と同様ウォン ビュー20000 +

おすすめ

転載: blog.csdn.net/weixin_42216109/article/details/105358154