Jim*_*y C 32 mysql shell command-line readonly
我正在创建一个bash脚本,除其他外,它从MySQL数据库中收集一些数据.我的MySQL用户具有写权限,但出于安全考虑,我想暂时将其设置为只读状态.是否可以从命令行执行此操作?
Flo*_*Doe 54
要回答原始问题,可以通过以下命令将整个数据库设置为只读模式:
FLUSH TABLES WITH READ LOCK;
SET GLOBAL read_only = 1;
Run Code Online (Sandbox Code Playgroud)
并返回正常模式:
SET GLOBAL read_only = 0;
UNLOCK TABLES;
Run Code Online (Sandbox Code Playgroud)
请注意,这是一项对数据库行为产生深远影响的操作.因此,在执行此操作之前,请阅读上述命令的可用文档.一种更常见的方法是从特定用户撤消DML权限,然后将其授予回授权.
如果您使用的是MySQL 5.6或更高版本以及InnoDB,则可以将会话设置为只读。
SET SESSION TRANSACTION READ ONLY;
Run Code Online (Sandbox Code Playgroud)
https://dev.mysql.com/doc/refman/5.6/en/set-transaction.html
“只读”还提供了适度的性能优势。
| 归档时间: |
|
| 查看次数: |
44672 次 |
| 最近记录: |