MySQL安全优化之利用别名防止误操作

新手运维误操作,删掉我整个test表(test,无备份)

操作命令:

MySQL> update test set;

产生的结果:

test表的所有name列都变成了"tom"

####################################

痛定思痛,百度后通过帮助命令发现

[root@linuxidc ~]# mysql --help|grep dummy
  -U, --i-am-a-dummy  Synonym for option --safe-updates, -U.
i-am-a-dummy                      FALSE

于是乎,脑洞大开

[root@linuxidc ~]# alias mysql='mysql -U'
[root@linuxidc ~]# alias
alias c='clear'
alias cp='cp -i'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias mysql='mysql -U'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
[root@linuxidc ~]# echo "alias mysql='mysql -U'" >>/etc/profile
[root@linuxidc ~]# source /etc/profile

问题解决。

注意:-U是大写的,以后再登陆的时候可以指定这个参数

好处:

指定登陆-U 后,在mysql里,执行update和delete操作,如果没有指定where或limit,则程序拒绝执行。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/bb28f2fe953b67ba560018dbd2587389.html