Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
здраствуйте, возникла проблема. дело в том что в проекте используется встроенный Mysql, и подключение выполняется через libmysqld. само подключение файлов настроено как нужно (наверное), при запуске клиентской программы код которой инициализирует библиотечный файл libmysqld, программа создает нужные файлы в указанном каталоге (ibdata1, ib_logfile0 и т.д). но как только код доходит до строчки "mysql = mysql_ini(NULL)", дальше он не двигается и консольное приложение просто закрывается. В чем может быть проблема? Пример: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2016, 08:28 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
Ucali, Нужно проверять значение, возвращаемое функцией mysql_library_init. Вероятно, она завершается неуспешно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2016, 09:41 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
Возвращает некорректное значение отличное от нуля. Аргументы передаются верные. Или нет? Может не те параметры заданы в передаваемых функции аргументах? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2016, 13:21 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
UcaliВозвращает некорректное значение отличное от нуля.Значит происходит ошибка. Ucali Код: plaintext 1. -1 тут зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2016, 13:30 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
miksoftUcali Код: plaintext 1. -1 тут зачем?А, понял. Что бы последний NULL не читался. Правда, его можно было бы убрать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2016, 13:44 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
что же это может быть? Может не правильно параметры прописаны в my.ini? Или какого-то параметра нужного там нет. Он выглядит так: [client] basedir=C:\\test datadir=C:\\test\data innodb_buffer_poll_size=256M innodb_additional_mem_poll_size=10M innodb_log_file_size=5M innodb_log_buffer_size=8M innodb_flush_log_at_trx_commit=1 или дело вовсе не в нем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2016, 14:38 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
UcaliC:\\testа зачем двойные слэши? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2016, 14:46 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
Это указано в документации ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2016, 16:02 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
в любом случае со слэшами все впорядке (C:\\ и C:/) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2016, 16:11 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
Ucali, так добавьте что-то типа Код: sql 1. 2. 3. 4. или как там точнее в Си.... и здесь: авторdatadir=C:\\test\dataвсе таки одинаковые слэши поставить.... (вперемешку одинар и двойной) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2016, 01:36 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. да, только строка Код: plaintext 1. не выполнится, после Код: plaintext 1. после это кода вообще ничего не выполняется, в этом и проблема. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2016, 11:50 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
Ucaliне выполнится, после Так поставь её перед . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2016, 14:53 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
нет смысла ставить ее перед . проблема с функцией mysql_library_init() , она возвращает значение отличное от 0, т.е это ошибка (в чем она заключает не ясно). mysql_error() взаимодействует с переменной mysql которая инициализируется обьектом функцией mysql_init() . написание mysql_error() перед mysql_init() ничего не сделает - переменная mysql еще не инициализирована. описал mysql_error() перед mysql_init() - ничего не выводит (возвращается пустая строка). может не правильно понимаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2016, 15:05 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
хорошо, тогда смотрите лог MySQL, ведь какой-то файл HostNamePC.err должен же быть в каталоге базы как и лог-файл если его нет, то добавьте в файл ини опцию явно База же пытается "стартануть", раз вы говорите, что при первом запуске Innodb файлы создаются. Вообще, для начала уберите опции InnoDB из My.ini пусть для проверки все будет по дефолту Думаю, что это все таки из-за параметров инициализации можно посмотреть СИшную ошибку printf("error = ", stderr); опять же не знаю что она подскажет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2016, 17:30 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
отлично, отображение лог-файла включено. после запуска в лог-файл записались различные ошибки. причина была в параметрах которые не были добавлены в .ini (innodb_data_home_dir=C:\\test\\data и innodb_data_file_path=ibdata1) и в содержимом каталога data, оно должно быть таким как mysql\data\*. теперь код продолжает работу. функция mysql_library_init() по прежднему возвращает отличное значение от 0. использовал функцию mysql_errno() - возвращает код ошибки 2000 (неизвестная ошибка mysql). по прежднему что-то не инициализировано в my.ini или в передаваемых аргументах функции mysql_library_init(). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2016, 21:31 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
Ucaliтеперь код продолжает работу.А в логе-то что? Ошибки все исчезли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2016, 21:32 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
осталось только одна ошибка: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2016, 21:52 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
это похоже опять ошибка InnoDB удалите опять все файлы с /data/ пусть база создастся заново и покажИте текст лог файла, miksoft уже просил у вас проще будет, если вы проверку параметров сделаете на обычной базе и "устаканите" их ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2016, 11:54 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
Ucaliотлично, отображение лог-файла включено. после запуска в лог-файл записались различные ошибки. причина была в параметрах которые не были добавлены в .ini (innodb_data_home_dir=C:\\test\\data и innodb_data_file_path=ibdata1) и в содержимом каталога data, оно должно быть таким как mysql\data\*. теперь код продолжает работу. функция mysql_library_init() по прежднему возвращает отличное значение от 0. использовал функцию mysql_errno() - возвращает код ошибки 2000 (неизвестная ошибка mysql). по прежднему что-то не инициализировано в my.ini или в передаваемых аргументах функции mysql_library_init(). нормальное добавление параметра innodb_data_file_path = ibdata1:10M:autoextend приводите полный точный my.ini во избежание доп вопросов лучше взять любой my*.ini из любого скачанного MySQL-server-noinstall и скопировать параметры оттуда, этот файл не "любит" ошибок (т.е. сервер MySQL ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2016, 16:19 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
Привет, что-нибудь получилось? Сейчас тоже пытаюсь запустить приложение со встроенным MySQL, но оно рушится. MySQL 5.5.30 собирал из исходников под виндой с MS VS-express 2010, сам сервер пробовал - запускается и работает нормально, а мое приложение на основе собранной libmysqld ломается. В логах выдаёт следующее: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Кусок сбойного исходника: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Такое ощущение, что файл my.ini игнорируется, поскольку в нём указано одно расположение папки с данными data, а логи создаются в папке data рядом с exe-шником. При этом обращение к my.ini все таки происходит в момент запуска приложения, это я проверил программой stat. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2016, 13:54 |
|
||
|
MySQL embedded
|
|||
|---|---|---|---|
|
#18+
antoshib, подправил кое-что, сейчас заработало. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. Вроде как my.ini зачитывается и без него программа ломается, но настройки, указанные в секции mysqld (пути basedir и datadir) не воспринимаются и происходит обращение к папке data из текущего каталога приложения. Можно забить на это, но хотелось бы ситуацию прояснить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2016, 10:17 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39148401&tid=1831121]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 13ms |
| total: | 146ms |

| 0 / 0 |
