Я изучал аналогичную проблему, где я получил следующую ошибку при использовании пользовательских функций , которые получили параметр varchar:
Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and
(utf8_general_ci,IMPLICIT) for operation '='
Используя следующий запрос:
mysql> show variables like "collation_database";
+--------------------+-----------------+
| Variable_name | Value |
+--------------------+-----------------+
| collation_database | utf8_general_ci |
+--------------------+-----------------+
Я смог сказать, что БД использует utf8_general_ci, тогда как таблицы были определены с помощью utf8_unicode_ci:
mysql> show table status;
+--------------+-----------------+
| Name | Collation |
+--------------+-----------------+
| my_view | NULL |
| my_table | utf8_unicode_ci |
...
Обратите внимание, что представления имеют NULL . Похоже, что представления и функции имеют определения сортировки, хотя этот запрос показывает null для одного представления. Используемая сортировка - это сортировка БД, которая была определена при создании представления / функции.
Печальным решением было как изменение сортировки db, так и воссоздание представлений / функций, чтобы заставить их использовать текущую сортировку.
ALTER DATABASE mydb DEFAULT COLLATE utf8_unicode_ci;
Надеюсь, это поможет кому-то.
Конечно. при работе бэкендов Tensorflow или CNTk код будет работать устройствах GPU по умолчанию. Но если бэкенды Theano, можно использовать следующий
флаги Theano:
"THEANO_FLAGS=device=gpu, floatX=float32 python my_keras_script.py"