Size: a a a

2021 September 11

<Zaur/> Abdulg... in MySQL
я делаю только одну операцию в терминале alter table. Но при этом приложение живое, и туда постоянно пишутся записи, обновляются. Но создание новых полей больше ни где не происходит. Это же не должно ни как влиять?
источник

<Zaur/> Abdulg... in MySQL
не вариант, 600к  записей, приложение работает с базой постоянно
источник

DE

Denis Efremov in MySQL
CREATE TABLE `UserActions1` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `botId` int(11) DEFAULT NULL,
 `delayedActionId` int(11) DEFAULT NULL,
 `userId` bigint(20) DEFAULT NULL,
 `chatId` bigint(20) DEFAULT '0',
 `executeTime` int(11) DEFAULT NULL,
 `performTime` int(11) DEFAULT '0',
 `isCanceled` tinyint(1) DEFAULT '0',
 `contentId` int(11) DEFAULT '0',
 `buttonId` int(11) DEFAULT '0',
 `storeOrderId` int(11) DEFAULT '0',
 `salt` bigint(20) DEFAULT NULL,
 `replaceCount` tinyint(4) DEFAULT '0',
 `createdAt` datetime NOT NULL,
 `updatedAt` datetime NOT NULL,
 PRIMARY KEY (`id`),
 UNIQUE KEY `user_actions_bot_id_delayed_action_id_user_id_perform_time` (`botId`,`delayedActionId`,`userId`,`chatId`,`performTime`,`salt`),
 KEY `performTime_isCanceled_executeTime` (`performTime`,`isCanceled`,`executeTime`)
) ENGINE=InnoDB AUTO_INCREMENT=1346383 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

alter table UserActions1 add column localVarSource varchar(1024) default null after salt;

Ну вот так вот проверь
источник

DE

Denis Efremov in MySQL
Только имена ключей надо поменять
источник

<Zaur/> Abdulg... in MySQL
да я верю что у тебя работает, не понятно почему у меня не работает :( может одна из 600к записей криво сохранилась и база теперь кривая, такое бывает ?
источник

DE

Denis Efremov in MySQL
Проверь говорю создав еще таблицу с другим именем и попробовав ее изменить
источник

<Zaur/> Abdulg... in MySQL
я уже почистил эту таблицу от старых не нужных записей, и проблема пропала 🤷‍♂️
источник

DE

Denis Efremov in MySQL
Проблема у таблицы пропала. Твои проблемы только начинаются )
источник

G

Grigorij in MySQL
Кстати, если у тебя вылетает ошибка dublicate entry при онлайн альтере, то альтер крашнется. Это точно применимо к maria 10.0.
Приходится в триггере вылавливать дублирующие вставки и вручную sqlerror генерировать
источник

<Zaur/> Abdulg... in MySQL
кажется понял в чем проблема
источник

RT

Roman Tkachenko in MySQL
Доброго времени суток всем! Помогите разобратся с ошибкой
"Trying to get some variables.Some pointers may be invalid and cause the dump to abort."
при выполнении запроса
"SELECT DISTINCT  child.item_id FROM sales_order_tax_item AS child  LEFT JOIN sales_flat_order_item AS parent ON child.item_id = parent.item_id
WHERE (child.item_id IS NOT NULL) AND (parent.item_id IS NULL)"
mysql 8.0.24 запущен в докер контейнере. mysql ложитя и не поднимается на этом запросе (
источник

DE

Denis Efremov in MySQL
ON child.item_id = parent.item_id
WHERE (child.item_id IS NOT NULL) AND (parent.item_id IS NULL)"

В случае если они равны, выбрать те записи, в которых они не равны
источник

RT

Roman Tkachenko in MySQL
Мне не так много доводилося работать с mysql но как я понимаю этот запрос должен вернуть айдишники айтемов с первой таблицы которых нету во второй
источник

RT

Roman Tkachenko in MySQL
запрос выполняется если я дописываю еще одного условие AND (child.item_id < 5000000)
источник

RT

Roman Tkachenko in MySQL
ошибка сваливаэтся так же если указать в условие диапазон айдишников от 5000000 до 5500000
источник

IZ

Ilia Zviagin in MySQL
Все ж написано
источник

IZ

Ilia Zviagin in MySQL
И что получаешь в ответ?
источник

IZ

Ilia Zviagin in MySQL
Alter  все равно не сделать когда другие пользователи работают.
источник

IZ

Ilia Zviagin in MySQL
Да, правильно
источник

IZ

Ilia Zviagin in MySQL
Не должно это быть от запроса.

Смотри в лог mySQL, чтобы увидеть причины падения
источник