2025-12-29 15:04:02 - article_server_search - ERROR - [flask_wht_server_search.py:60] - 标签搜索引擎初始化失败: No module named 'psutil' Traceback (most recent call last): File "D:\workspace\ai_wht\flask_wht_server_search.py", line 57, in initialize_service init_search_engine() File "D:\workspace\ai_wht\whoosh_search_tags.py", line 2023, in init_search_engine added_count = add_documents_from_ai_image_tags(search_engine, force_reload=force_rebuild) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\whoosh_search_tags.py", line 1377, in add_documents_from_ai_image_tags import psutil ModuleNotFoundError: No module named 'psutil' 2025-12-29 15:04:03 - article_server_search - ERROR - [flask_wht_server_search.py:1114] - 服务器启动失败: (1045, "Access denied for user 'ai_wht_write'@'222.204.1.8' (using password: YES)") Traceback (most recent call last): File "D:\workspace\ai_wht\flask_wht_server_search.py", line 1099, in db_manager.execute_query("SELECT 1") File "D:\workspace\ai_wht\database_config.py", line 199, in execute_query return self._execute_with_retry(_query_operation) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\database_config.py", line 103, in _execute_with_retry return operation(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\database_config.py", line 175, in _query_operation with self.get_cursor() as cursor: File "D:\anaconda\Lib\contextlib.py", line 137, in __enter__ return next(self.gen) ^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\database_config.py", line 140, in get_cursor connection = self._execute_with_retry(self.get_connection) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\database_config.py", line 103, in _execute_with_retry return operation(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\database_config.py", line 66, in get_connection self._local.connection = pymysql.connect(**self.config) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\connections.py", line 358, in __init__ self.connect() File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\connections.py", line 664, in connect self._request_authentication() File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\connections.py", line 976, in _request_authentication auth_packet = _auth.caching_sha2_password_auth(self, auth_packet) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\_auth.py", line 267, in caching_sha2_password_auth pkt = _roundtrip(conn, data) ^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\_auth.py", line 120, in _roundtrip pkt = conn._read_packet() ^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\connections.py", line 772, in _read_packet packet.raise_for_error() File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\protocol.py", line 221, in raise_for_error err.raise_mysql_exception(self._data) File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\err.py", line 143, in raise_mysql_exception raise errorclass(errno, errval) pymysql.err.OperationalError: (1045, "Access denied for user 'ai_wht_write'@'222.204.1.8' (using password: YES)") 2025-12-29 15:04:23 - article_server_search - ERROR - [flask_wht_server_search.py:1114] - 服务器启动失败: (1045, "Access denied for user 'ai_wht_write'@'222.204.1.8' (using password: YES)") Traceback (most recent call last): File "D:\workspace\ai_wht\flask_wht_server_search.py", line 1099, in db_manager.execute_query("SELECT 1") File "D:\workspace\ai_wht\database_config.py", line 199, in execute_query return self._execute_with_retry(_query_operation) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\database_config.py", line 103, in _execute_with_retry return operation(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\database_config.py", line 175, in _query_operation with self.get_cursor() as cursor: File "D:\anaconda\Lib\contextlib.py", line 137, in __enter__ return next(self.gen) ^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\database_config.py", line 140, in get_cursor connection = self._execute_with_retry(self.get_connection) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\database_config.py", line 103, in _execute_with_retry return operation(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\database_config.py", line 66, in get_connection self._local.connection = pymysql.connect(**self.config) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\connections.py", line 358, in __init__ self.connect() File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\connections.py", line 664, in connect self._request_authentication() File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\connections.py", line 976, in _request_authentication auth_packet = _auth.caching_sha2_password_auth(self, auth_packet) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\_auth.py", line 267, in caching_sha2_password_auth pkt = _roundtrip(conn, data) ^^^^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\_auth.py", line 120, in _roundtrip pkt = conn._read_packet() ^^^^^^^^^^^^^^^^^^^ File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\connections.py", line 772, in _read_packet packet.raise_for_error() File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\protocol.py", line 221, in raise_for_error err.raise_mysql_exception(self._data) File "D:\workspace\ai_wht\venv\Lib\site-packages\pymysql\err.py", line 143, in raise_mysql_exception raise errorclass(errno, errval) pymysql.err.OperationalError: (1045, "Access denied for user 'ai_wht_write'@'222.204.1.8' (using password: YES)")