自从更新mysql.It状态以来,我一直收到一个警告(它淹没了我的日志),
1287, "'@@tx_isolation' is deprecated and will be removed in a future release. Please use '@@transaction_isolation' instead"在mysql下
mysql> show variables like "tx_isolation";
+---------------+-----------------+
| Variable_name | Value |
+---------------+-----------------+
| tx_isolation | REPEATABLE-READ |
+---------------+-----------------+
1 row in set (0.00 sec)我还有警告建议的新变量..。
mysql> show variables like "transaction_isolation";
+-----------------------+-----------------+
| Variable_name | Value |
+-----------------------+-----------------+
| transaction_isolation | REPEATABLE-READ |
+-----------------------+-----------------+
1 row in set (0.00 sec我知道这种变体已经不再使用了。我希望它消失,但我对我的疑问很谨慎。是删除警告变量的正确过程。如果是这样的话,是怎么做的?
在检查my.cnf时,我没有看到任何提到这两个变量的地方。
发布于 2017-11-05 09:07:46
问题所在是在SQLAlchemy中解析,作为1.2.0版本的一部分发布,支持到1.1.15,它是在2017年-11-03年推出的.通过将SQLAlchemy升级到1.1.15,警告就消失了。
pip install sqlalchemy>=1.1.15发布于 2017-10-31 02:41:47
从MySQL 5.7.20开始,您应该切换到使用transaction_isolation。它在文件中指出:
在MySQL 5.7.20之前,使用tx_isolation而不是transaction_isolation。
https://dev.mysql.com/doc/refman/5.7/en/set-transaction.html
tx_isolation
Deprecated 5.7.20
System Variable Name tx_isolationtransaction_isolation
Command-Line Format --transaction-isolation=name
System Variable (>= 5.7.20) Name transaction_isolation编辑:
与其依赖旧变量,不如开始使用新变量,如文档提供的示例所示
SELECT @@GLOBAL.transaction_isolation, @@transaction_isolation;
SET GLOBAL transaction_isolation='REPEATABLE-READ';
SET SESSION transaction_isolation='SERIALIZABLE';您必须在代码中搜索,以确定在何处使用了不推荐的变量,并使用新的变量/语法替换它。
发布于 2017-10-31 12:36:18
在烧瓶安装程序中使用pymysql库时,我得到了这个错误。降级到mysql 5.6可以工作,但可能不是最好的解决方案。
https://stackoverflow.com/questions/47026599
复制相似问题