root@531a0c7c5e99:/home/NBSystem# python3 manage.py makemigrations /usr/local/lib/python3.10/dist-packages/django/core/management/commands/makemigrations.py:105: RuntimeWarning: Got an error checking a consistent migration history performed for database connection ‘default’: (1049, “Unknown database ‘NBSystem'”) warnings.warn( No changes detected root@531a0c7c5e99:/home/NBSystem# python3 manage.py migrate Traceback (most recent call last): File “/usr/local/lib/python3.10/dist-packages/django/db/backends/base/base.py”, line 219, in ensure_connection self.connect() File “/usr/local/lib/python3.10/dist-packages/django/utils/asyncio.py”, line 26, in inner return func(*args, **kwargs) File “/usr/local/lib/python3.10/dist-packages/django/db/backends/base/base.py”, line 200, in connect self.connection = self.get_new_connection(conn_params) File “/usr/local/lib/python3.10/dist-packages/django/utils/asyncio.py”, line 26, in inner return func(*args, **kwargs) File “/usr/local/lib/python3.10/dist-packages/django/db/backends/mysql/base.py”, line 234, in get_new_connection connection = Database.connect(**conn_params) File “/usr/local/lib/python3.10/dist-packages/MySQLdb/__init__.py”, line 121, in Connect return Connection(*args, **kwargs) File “/usr/local/lib/python3.10/dist-packages/MySQLdb/connections.py”, line 195, in __init__ super().__init__(*args, **kwargs2) MySQLdb.OperationalError: (1049, “Unknown database ‘NBSystem'”) The above exception was the direct cause of the following exception: Traceback (most recent call last): File “/home/NBSystem/manage.py”, line 22, in <module> main() File “/home/NBSystem/manage.py”, line 18, in main execute_from_command_line(sys.argv) File “/usr/local/lib/python3.10/dist-packages/django/core/management/__init__.py”, line 419, in execute_from_command_line utility.execute() File “/usr/local/lib/python3.10/dist-packages/django/core/management/__init__.py”, line 413, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File “/usr/local/lib/python3.10/dist-packages/django/core/management/base.py”, line 354, in run_from_argv self.execute(*args, **cmd_options) File “/usr/local/lib/python3.10/dist-packages/django/core/management/base.py”, line 398, in execute output = self.handle(*args, **options) File “/usr/local/lib/python3.10/dist-packages/django/core/management/base.py”, line 89, in wrapped res = handle_func(*args, **kwargs) File “/usr/local/lib/python3.10/dist-packages/django/core/management/commands/migrate.py”, line 75, in handle self.check(databases=[database]) File “/usr/local/lib/python3.10/dist-packages/django/core/management/base.py”, line 419, in check all_issues = checks.run_checks( File “/usr/local/lib/python3.10/dist-packages/django/core/checks/registry.py”, line 76, in run_checks new_errors = check(app_configs=app_configs, databases=databases) File “/usr/local/lib/python3.10/dist-packages/django/core/checks/database.py”, line 13, in check_database_backends issues.extend(conn.validation.check(**kwargs)) File “/usr/local/lib/python3.10/dist-packages/django/db/backends/mysql/validation.py”, line 9, in check issues.extend(self._check_sql_mode(**kwargs)) File “/usr/local/lib/python3.10/dist-packages/django/db/backends/mysql/validation.py”, line 13, in _check_sql_mode if not (self.connection.sql_mode & {‘STRICT_TRANS_TABLES’, ‘STRICT_ALL_TABLES’}): File “/usr/local/lib/python3.10/dist-packages/django/utils/functional.py”, line 48, in __get__ res = instance.__dict__[self.name] = self.func(instance) File “/usr/local/lib/python3.10/dist-packages/django/db/backends/mysql/base.py”, line 405, in sql_mode sql_mode = self.mysql_server_data[‘sql_mode’] File “/usr/local/lib/python3.10/dist-packages/django/utils/functional.py”, line 48, in __get__ res = instance.__dict__[self.name] = self.func(instance) File “/usr/local/lib/python3.10/dist-packages/django/db/backends/mysql/base.py”, line 366, in mysql_server_data with self.temporary_connection() as cursor: File “/usr/lib/python3.10/contextlib.py”, line 135, in __enter__ return next(self.gen) File “/usr/local/lib/python3.10/dist-packages/django/db/backends/base/base.py”, line 603, in temporary_connection with self.cursor() as cursor: File “/usr/local/lib/python3.10/dist-packages/django/utils/asyncio.py”, line 26, in inner return func(*args, **kwargs) File “/usr/local/lib/python3.10/dist-packages/django/db/backends/base/base.py”, line 259, in cursor return self._cursor() File “/usr/local/lib/python3.10/dist-packages/django/db/backends/base/base.py”, line 235, in _cursor self.ensure_connection() File “/usr/local/lib/python3.10/dist-packages/django/utils/asyncio.py”, line 26, in inner return func(*args, **kwargs) File “/usr/local/lib/python3.10/dist-packages/django/db/backends/base/base.py”, line 218, in ensure_connection with self.wrap_database_errors: File “/usr/local/lib/python3.10/dist-packages/django/db/utils.py”, line 90, in __exit__ raise dj_exc_value.with_traceback(traceback) from exc_value File “/usr/local/lib/python3.10/dist-packages/django/db/backends/base/base.py”, line 219, in ensure_connection self.connect() File “/usr/local/lib/python3.10/dist-packages/django/utils/asyncio.py”, line 26, in inner return func(*args, **kwargs) File “/usr/local/lib/python3.10/dist-packages/django/db/backends/base/base.py”, line 200, in connect self.connection = self.get_new_connection(conn_params) File “/usr/local/lib/python3.10/dist-packages/django/utils/asyncio.py”, line 26, in inner return func(*args, **kwargs) File “/usr/local/lib/python3.10/dist-packages/django/db/backends/mysql/base.py”, line 234, in get_new_connection connection = Database.connect(**conn_params) File “/usr/local/lib/python3.10/dist-packages/MySQLdb/__init__.py”, line 121, in Connect return Connection(*args, **kwargs) File “/usr/local/lib/python3.10/dist-packages/MySQLdb/connections.py”, line 195, in __init__ super().__init__(*args, **kwargs2) django.db.utils.OperationalError: (1049, “Unknown database ‘NBSystem'”)

このエラーメッセージは、Djangoがデータベースを見つけることができないことを示しています。具体的には、データベース名が NBSystem であると想定されていますが、存在しないためエラーが発生しています。

解決するためには、次の手順を実行する必要があります。

  1. RDSコンソールにログインし、NBSystem という名前のデータベースが存在することを確認してください。存在しない場合は、作成してください。

  2. Djangoの設定ファイル (settings.py) を開き、データベース設定を正しく構成していることを確認してください。以下のようになっているはずです。

python
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'NBSystem', 'USER': 'ユーザー名', 'PASSWORD': 'パスワード', 'HOST': 'RDSのエンドポイント', 'PORT': 'ポート番号', } }
  1. makemigrations コマンドを実行して、データベースのマイグレーションを作成します。
bash
python3 manage.py makemigrations
  1. migrate コマンドを実行して、マイグレーションを適用します。
bash
python3 manage.py migrate

これにより、Djangoが正しくRDSデータベースに接続できるようになります。

未分類

Posted by ぼっち