У меня есть приложение .NET, которое выполняет запросы в базе данных MySQL в Amazon Aurora RDS. База данных - это база данных MySQL 5.6 - версия, которая поставляется с Aurora.Сервер AWS Aurora иногда отвечает «Неизвестной базой данных: ...»
Выполняю запросы по схеме (имя: полет) в базе данных (имя: SSIMLoader). Я использую библиотеки MySQL 6.9.8.0.
Редактировать: Строка подключения указывает на главный сервер в кластере, а не на определенный сервер.
Ошибка при вставке, выборе и обновлении, поэтому нет реального шаблона. Даже простые утверждения select выходят случайным образом.
Однако мы не получаем такой ошибки при выполнении запросов через Workbench MySQL.
После перезапуска сервера ошибка исчезает в течение нескольких дней, а затем возвращается.
У нас есть очень интенсивные запросы, которые увеличивают нагрузку на процессор до 90% в течение длительных периодов времени, но ошибка сохраняется даже после того, как процессор упал до 10%.
Кто-нибудь еще испытал это, и если да, то как вы прошли мимо него?
Заранее благодарен.
- редактировать: Наконец получил ошибку снова:
MySql.Data.MySqlClient.MySqlException (0x80004005): Неизвестный базы данных 'Полет' в MySql.Data.MySqlClient.MySqlStream.ReadPacket () в MySql.Data.MySqlClient.NativeDriver.ReadOk (Boolean чтение) в MySql.Data.MySqlClient.MySqlConnection.ChangeDatabase (Строка Databasename) в MySql.Data.MySqlClient.MySqlConnection.Open() в MySql.Data. MySqlClient.MySqlConnection.Open() в Universal.Access.Database.BaseDatabaseConnection.EstablishFactoryConnection() в Universal.Access.Database.BaseDatabaseConnection.ExecuteReader (CommandType commandType, CommandText commandText) в Universal.Core.DataModel.ExecutableDatabaseConnection.ExecuteQuery (String sqlQuery) в C: \ TC-проекты \ универсального платформы \ Universal.Core \ DataModel \ ExecutableDatabaseConnection.cs: линия 65
Это запрос, который был запущен:
UP-DEV | Universal.Core.Data.Importer Error finding current record, SQL: SELECT aircraft_config,updated_by,asa_flight_id,atd_utc,bay,terminal,is_cancelled,flight_number,created_at,from_iata,flight_date_utc,std_local,takeoff_time_local,is_international,is_aerocare,cobt_local,customer_atd_local,takeoff_time_utc,std_utc,atd_local,asa_state,aircraft_type,customer_atd_utc,carrier_code,updated_at,gate,service_type,etd_local,cobt_utc,flight_status,etd_utc,aircraft_rego,created_by,id,flight_date,to_iata FROM flight.departure_flight WHERE carrier_code='JQ' AND flight_date_utc='2017-01-20T00:00:00' AND flight_number='57' AND from_iata='MEL'. Database returned: Unknown database 'flight'
Я не верю, что это сообщение на самом деле происходит от Авроры. Или, по крайней мере, я подозреваю, что этого может не быть. Ошибки с сервера Aurora [должны иметь номер ошибки] (https://dev.mysql.com/doc/connector-net/en/connector-net-ref-mysqlclient-mysqlexceptionmembers.html) вместе со стандартным сообщением и «Невозможно найти базу данных» не похоже на стандартное сообщение, обнаруженное в исходном исходном коде - и Aurora обычно использует стандартные ошибки. Какая * точная * формулировка ошибки и какой сопроводительный код? –
@ Michael-sqlbot - я редактировал вопрос, чтобы показать ошибку, как я ее вижу в журналах. – Vaelen
@ Michael-sqlbot, я бы согласился с тем, что, как правило, у баз данных есть номера ошибок, но поскольку это «измененная» версия MySQL, созданная специально AWS, они могут скрывать числа. – Vaelen