dnat1970

Ответы в темах

Просмотр 13 сообщений - с 31 по 43 (из 43 всего)
  • Автор
    Записи
  • в ответ на: Не получается экспорт в БД #25736
    dnat1970
    Участник

    Здравствуйте,
    попробовал создать строку соединения как указанно по ссылке
    Database=Studentenverwaltung;Port=3306;Data Source=127.0.0.1;User Id=root;Password=abc123;SslMode=none
    результат то же что и был все логи говорят о том что процесс экспорта идет количество экспортируемых значений меняется — при это записи в БД не попадают

    Текущие данные
    —————
    Состояние : норма
    В очереди : 0 из 1000
    Экспортировано : 9
    Пропущено : 0

    По данной ссылке предлагают решить проблему с отключением SSL режима, эту проблему я решил и об этом писал выше вставив SslMode=none. Так же решил проблему с плагин шифрования sha256_password — если кому то будет полезно то рещение такое — нужно при установке MySQL выбрать опцию совместимости шифрования со старыми версиями MySQL 5.7 (при установке это предлагается)

    Еще из одних моих предположений того что не идет запись в БД — это то, что модуль экспорта все отрабатывает правильно и передает их в буфер БД MySQL но по каким то причинам с буфера они не попадают в основную базу, но это пока только предположения
    Если есть еще советы где посмотреть — буду признателен

    в ответ на: Не получается экспорт в БД #25625
    dnat1970
    Участник

    Прошу прощения есть еще одно наблюдение, с которым не могу разобраться.
    После запуска или перезагрузки службы MySql в лог файле появляется ошибка связанная с RSA шифрованием
    MySql.Data.MySqlClient.MySqlException (0x80004005): Retrieval of the RSA public key is not enabled for insecure connections.
    У меня ошибка пропадает и в лог файлы говорят, что экспорт пошел после того как я подсоединяюсь к БД с этим же логином через phpMyAdmin (сделал предположение что RSA восстановилось) при этом записи в БД так и не добавляются.
    В связи с этим вопрос — а есть опыт эксплуатации модуля экспорта ModDbExport на более поздних версиях — например MySql 8.0 где установлен плагин шифрования sha256_password?

    • Ответ изменён 3 года, 11 месяцев назад пользователем dnat1970.
    в ответ на: Не получается экспорт в БД #25624
    dnat1970
    Участник

    Может ли быть ошибка из за неправильной кодировки таблиц?
    Сейчас я использую utf8mb4_unicode_ci.

    в ответ на: Не получается экспорт в БД #25623
    dnat1970
    Участник

    Информация о MySQL
    Сервер: localhost via TCP/IP
    Тип сервера: MySQL
    Соединение сервера: SSL не используется Документация
    Версия сервера: 8.0.30 — MySQL Community Server — GPL
    Версия протокола: 10
    Пользователь: user1@localhost
    Кодировка сервера: UTF-8 Unicode (utf8mb4)

    в ответ на: Не получается экспорт в БД #25622
    dnat1970
    Участник

    Добавил триггер на архивные данные Лог файл показывает что все происходит нормально — но в БД данные не попадают
    Состояние экспортёра
    ———————
    Наименование : [1] MySQL localhost
    Сервер БД :
    Соединение : норма

    Текущие данные
    —————
    Состояние : норма
    В очереди : 0 из 1000
    Экспортировано : 11
    Пропущено : 0

    Архивные данные
    —————
    Состояние : норма
    В очереди : 0 из 1000
    Экспортировано : 15
    Пропущено : 0

    События
    ——-
    Очередь не используется

    Передача архивов
    —————-
    Готовность : да
    Индекс : 644
    Дата : 21.10.2022
    Мин. время : —
    Макс. время : —
    В очереди : —
    Отправлен : 21.10.2022 18:24:00

    в ответ на: Не получается экспорт в БД #25621
    dnat1970
    Участник

    Базу данных и таблицы создавал из консоли использую SQL запросы которые находятся на сайте
    — Удалить таблицу данных входных каналов, если она существует
    DROP TABLE IF EXISTS cnldata;

    — Создать таблицу данных входных каналов
    CREATE TABLE cnldata (
    datetime DATETIME NOT NULL,
    cnlnum INT NOT NULL,
    val DOUBLE NOT NULL,
    stat SMALLINT UNSIGNED NOT NULL,
    PRIMARY KEY (datetime, cnlnum)
    ) ENGINE=InnoDB;

    CREATE INDEX idx_cnldata_cnlnum ON cnldata (cnlnum);

    — Удалить таблицу событий, если она существует
    DROP TABLE IF EXISTS events;

    — Создать таблицу событий
    CREATE TABLE events (
    datetime DATETIME NOT NULL,
    objnum INT NOT NULL,
    kpnum INT NOT NULL,
    paramid INT NOT NULL,
    cnlnum INT NOT NULL,
    oldcnlval DOUBLE NOT NULL,
    oldcnlstat SMALLINT UNSIGNED NOT NULL,
    newcnlval DOUBLE NOT NULL,
    newcnlstat SMALLINT UNSIGNED NOT NULL,
    checked TINYINT UNSIGNED NOT NULL,
    userid INT NOT NULL,
    descr CHAR(100),
    data CHAR(50)
    ) ENGINE=InnoDB;

    CREATE INDEX idx_events_datetime ON events (datetime);
    CREATE INDEX idx_events_objnum ON events (objnum);
    CREATE INDEX idx_events_kpnum ON events (kpnum);
    CREATE INDEX idx_events_cnlnum ON events (cnlnum);

    в ответ на: Не получается экспорт в БД #25620
    dnat1970
    Участник

    Попробовал добавить к запросу в форме принадлежность таблицы cnldata к созданной мною базе gofroplk — результата то же не получил
    INSERT INTO gofroplk.cnldata (datetime, cnlnum, val, stat)
    VALUES (now(), 10, 11, 12);
    Добавил для эксперимента «;» в конце запроса — разницы не увидел

    в ответ на: Не получается экспорт в БД #25619
    dnat1970
    Участник

    Добрый — данных нет
    Смотрю phpMyAdmin и чз консоль, данные и в консоле и в phpMyAdmin — заносятся в ручном режиме чз SQL запросы и их же в последствии видно, экспортируемых данных нет

    в ответ на: Не получается экспорт в БД #25613
    dnat1970
    Участник

    Доброго времени!
    Не получается побороть экспорт в БД MySQL прошу помочь.
    Предыдущую ошибку — System.Security.Authentication.AuthenticationException: Ошибка вызова SSPI, см. внутреннее исключение. —> System.ComponentModel.Win32Exception

    Удалось решить добавлением в строку SQL запроса — SslMode=None;
    server=localhost;port=3306;SslMode=None;database=gofroplk;user id=root;password=12345
    Тригер на текущие данные
    INSERT INTO cnldata (datetime, cnlnum, val, stat)
    VALUES (now(), 10, 11, 12)

    Полагаю что SSL можно было бы отключить и в настройках MySQL — но моего опыта не достаточно чтобы правильно это сделать. Сейчас у меня в логах как будто все нормально, но данные в БД в таблице (cnldata) не появляются — не могу понять причину, может таки опять недонастроены файлы конфигурации MySQL 8.0 (я использовал стандартный установщик с их сайта и оставил установки которые были сделаны при инсталляции)
    В общем я не могу понять куда записываются мои данные и записываются ли они -прошу помочь в этом разобраться

    Лог файлы ниже (смущает: Файл состояния экспорта отсутствует я задавал уже этот вопрос для меня непонятно это ошибка или это же норма)

    ModDbExport
    2022-10-21 01:21:51 Запуск работы модуля ModDbExport
    2022-10-21 01:21:51 Карта каналов и КП загружена
    2022-10-21 01:21:51 Запуск экспорта

    ModDbExport_001
    2022-10-21 01:21:51 Запуск экспортёра «[1] MySQL localhost»
    2022-10-21 01:21:51 Файл состояния экспорта отсутствует

    ModDbExport_001.txt
    Состояние экспортёра
    ———————
    Наименование : [1] MySQL localhost
    Сервер БД :
    Соединение : норма

    Текущие данные
    —————
    Состояние : норма
    В очереди : 0 из 1000
    Экспортировано : 20
    Пропущено : 0

    Архивные данные
    —————
    Очередь не используется

    События
    ——-
    Очередь не используется

    Передача архивов
    —————-
    Отключена
    ___________________________

    в ответ на: Не получается экспорт в БД #25233
    dnat1970
    Участник

    И посмотрите пожалуйста все ли правильно в запросе «Тригера на текущие данные»
    INSERT INTO cnldata (datetime, cnlnum, val, stat)
    VALUES (@dateTime, @cnlNum, @val15, @stat15)
    Спасибо

    в ответ на: Не получается экспорт в БД #25232
    dnat1970
    Участник

    И MySQL Workbench и phpMyAdmin БД видят, позволяет в нее вносить записи и редактировать их. Причем пробовал и с пользователем root и с новым созданным пользователем user1 с полными правами. Есть подозрение что на MySQL включено SSL, но вроде в описании говорится, что это не влияет на подключение клиента если явно в MySql этого не задано. Командной строкой в мониторе обращение к БД то — же нормальное. Почему тогда может происходить конфликт с клиентом SCADA не понятно.
    И разъясните что означает лог —
    Файл состояния экспорта отсутствует. ?
    Влияют ли «Галочки» Включено-Выключено в разделе Свойств «Параметры загрузки архива» на передачу данных

    в ответ на: Не получается экспорт в БД #25215
    dnat1970
    Участник

    Добрый!

    server=localhost;port=3306;database=gofro;user id=user1;password=12345

    2022-09-27 00:00:24 Запуск экспортёра «[1] MySQL localhost»
    2022-09-27 00:00:24 Файл состояния экспорта отсутствует
    2022-09-27 00:02:28 Экспортёр «[1] MySQL localhost» остановлен

    чуть раньше было так

    2022-09-26 23:10:53 Ошибка при соединении с БД:
    MySql.Data.MySqlClient.MySqlException (0x80004005): Authentication to host ‘localhost’ for user ‘root’ using method ‘mysql_native_password’ failed with message: Access denied for user ‘root’@’localhost’ (using password: YES) —> MySql.Data.MySqlClient.MySqlException (0x80004005): Access denied for user ‘root’@’localhost’ (using password: YES)
    в MySql.Data.MySqlClient.MySqlStream.ReadPacket()
    в MySql.Data.MySqlClient.Authentication.MySqlAuthenticationPlugin.ReadPacket()
    в MySql.Data.MySqlClient.Authentication.MySqlAuthenticationPlugin.AuthenticationFailed(Exception ex)
    в MySql.Data.MySqlClient.Authentication.MySqlAuthenticationPlugin.ReadPacket()
    в MySql.Data.MySqlClient.Authentication.MySqlAuthenticationPlugin.Authenticate(Boolean reset)
    в MySql.Data.MySqlClient.NativeDriver.Open()
    в MySql.Data.MySqlClient.Driver.Open()
    в MySql.Data.MySqlClient.Driver.Create(MySqlConnectionStringBuilder settings)
    в MySql.Data.MySqlClient.MySqlPool.CreateNewPooledConnection()
    в MySql.Data.MySqlClient.MySqlPool.GetPooledConnection()
    в MySql.Data.MySqlClient.MySqlPool.TryToGetDriver()
    в MySql.Data.MySqlClient.MySqlPool.GetConnection()
    в MySql.Data.MySqlClient.MySqlConnection.Open()
    в Scada.Db.DataSource.Connect()
    в Scada.Server.Modules.DbExport.Exporter.Connect()
    2022-09-26 23:10:54 Ошибка при соединении с БД:
    MySql.Data.MySqlClient.MySqlException (0x80004005): Authentication to host ‘localhost’ for user ‘root’ using method ‘mysql_native_password’ failed with message: Access denied for user ‘root’@’localhost’ (using password: YES) —> MySql.Data.MySqlClient.MySqlException (0x80004005): Access denied for user ‘root’@’localhost’ (using password: YES)
    в MySql.Data.MySqlClient.MySqlStream.ReadPacket()
    в MySql.Data.MySqlClient.Authentication.MySqlAuthenticationPlugin.ReadPacket()
    в MySql.Data.MySqlClient.Authentication.MySqlAuthenticationPlugin.AuthenticationFailed(Exception ex)
    в MySql.Data.MySqlClient.Authentication.MySqlAuthenticationPlugin.ReadPacket()
    в MySql.Data.MySqlClient.Authentication.MySqlAuthenticationPlugin.Authenticate(Boolean reset)
    в MySql.Data.MySqlClient.NativeDriver.Open()
    в MySql.Data.MySqlClient.Driver.Open()
    в MySql.Data.MySqlClient.Driver.Create(MySqlConnectionStringBuilder settings)
    в MySql.Data.MySqlClient.MySqlPool.CreateNewPooledConnection()
    в MySql.Data.MySqlClient.MySqlPool.GetPooledConnection()
    в MySql.Data.MySqlClient.MySqlPool.TryToGetDriver()
    в MySql.Data.MySqlClient.MySqlPool.GetConnection()
    в MySql.Data.MySqlClient.MySqlConnection.Open()
    в Scada.Db.DataSource.Connect()
    в Scada.Server.Modules.DbExport.Exporter.Connect()

    dnat1970
    Участник

    Поставил нумерацию сигналов заработало. Подскажите а где можно посмотреть описание по всем полям и правильности заполнения » Входные каналы КП»

Просмотр 13 сообщений - с 31 по 43 (из 43 всего)