powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Запуск процедуры при старте Mysql
5 сообщений из 5, страница 1 из 1
Запуск процедуры при старте Mysql
    #39299753
Max585
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пытаюсь сделать следующим образом в файле my.ini (windows) прописываю строку:

[mysqld]
init-file=c:\file.sql

В файле file.sql пишу:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
DELIMITER \\
DROP PROCEDURE IF EXISTS `shops`.`init`\\
CREATE PROCEDURE `shops`.`init` ()
BEGIN 
INSERT INTO `shops`.`clothes` (`art`, `text`) VALUES (8, 'my text');

END \\
DELIMITER;

CALL `shops`.init();



Ничего не получается, таблица пуста. В чем ошибка?
Может быть есть другие варианты решения этого вопроса(Запуск процедуры при старте My
...
Рейтинг: 0 / 0
Запуск процедуры при старте Mysql
    #39299798
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. каждое утверждение в этом файле должно быть в одной строчке (читайте документацию, я допустим тоже всего не помню)
2. Лучше пробовать с простого SQL-утверждения (для начала просто INSERT) для проверки
т.е. как минимум вам надо CREATE PROCEDURE .... END // разместить в одной строке

смысл объясните - зачем вам это или что вы хотите сделать (причем именно при запуске сервера)
...
Рейтинг: 0 / 0
Запуск процедуры при старте Mysql
    #39299882
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Ustinov,
я такое использовал для формирования таблицы в памяти.
...
Рейтинг: 0 / 0
Запуск процедуры при старте Mysql
    #39299928
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Max585,

и еще, включите general-log в my.ini там же
может быть ошибка загрузки этого файлика (она есть 99%)
...
Рейтинг: 0 / 0
Запуск процедуры при старте Mysql
    #39300151
Max585
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alex_Ustinov,
Спасибо ОГРОМНОЕ!!!

Оказалось в файле была включена подпись Юникода, благодаря логу удалось это увидеть:

1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'п»їINSERT INTO `shops`.`clothes` (`art`, `text`) VALUES (8, 'my text');' at line 1
2016-08-30T08:33:50.233938Z 0 [Note] Execution of init_file 'c:\file.sql' ended.

Теперь все работает.

P.S.
Запуск процедуры при старте нужен, чтобы скопировать несколько таблиц в память.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Запуск процедуры при старте Mysql
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]