mysql 帮助说明
1[oldboy_c64 ~]# mysql --help|grep dummy
2 -U, --i-am-a-dummy Synonym for option --safe-updates, -U.
3i-am-a-dummy FALSE
在 mysql 命令加上选项-U 后,当发出没有 WHERE 或 LIMIT 关键字的 UPDATE 或 DELETE 时,
mysql 程序就会拒绝执行
[oldboy_c64 ~]# mysql -uroot -poldboy123 -S /data/3306/mysql.sock –U
1
Welcome to the MySQL monitor. Commands end with ; or g.
2
Your MySQL connection id is 14
3
Server version: 5.5.32-log MySQL Community Server (GPL)
4
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
5
Oracle is a registered trademark of Oracle Corporation and/or its
6
affiliates. Other names may be trademarks of their respective
7
owners.
8
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
9
mysql> delete from oldboy.student;
10
ERROR 1175 (HY000): You are using safe update mode and you tried to update a
11
table without a WHERE that uses a KEY column
12
mysql> quit
13
Bye
103
提示:不加条件无法删除,目的达到。
3、做成别名防止老大和 DBA 误操作
1 [oldboy_c64 ~]# alias mysql='mysql -U'
2 [oldboy_c64 ~]# mysql -uroot -poldboy123 -S /data/3306/mysql.sock
3 Welcome to the MySQL monitor. Commands end with ; or g.
4 Your MySQL connection id is 15
5 Server version: 5.5.32-log MySQL Community Server (GPL)
6 Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
7 mysql> delete from oldboy.student;
8 ERROR 1175 (HY000): You are using safe update mode and you tried to update a
9 table without a WHERE that uses a KEY column
10mysql> delete from oldboy.student where Sno=5;
11Query OK, 1 row affected (0.02 sec)
12mysql> quit
104
13Bye
14[oldboy_c64 ~]# echo "alias mysql='mysql -U'" >>/etc/profile
15[oldboy_c64 ~]# . /etc/profile
16[oldboy_c64 ~]# tail -1 /etc/profile
alias mysql='mysql -U' 结论:
在 mysql 命令加上选项-U 后,当发出没有 WHERE 或 LIMIT 关键字的 UPDATE 或 DELETE 时,
mysql 程序拒绝执行