我正在创建一个bash脚本,除其他外,该脚本从MySQL数据库收集一些数据。我的MySQL用户具有写权限,但是出于安全原因,我想将其临时设置为只读状态。是否可以从命令行执行此操作?
要回答您的原始问题,您可以通过以下命令将整个数据库设置为只读模式:
FLUSH TABLES WITH READ LOCK; SET GLOBAL read_only = 1;
并通过以下方式返回正常模式:
SET GLOBAL read_only = 0; UNLOCK TABLES;
请注意,此操作将对数据库的行为产生深远的影响。因此,在执行此操作之前,请阅读上述命令的可用文档。一种更常见的方法是撤消特定用户的DML特权,然后再将其授予。