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 程序拒绝执行

linux 防止误操作 mysql 数据库技巧的更多相关文章

  1. (转)防止人为误操作MySQL数据库技巧一例

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://oldboy.blog.51cto.com/2561410/1321061 防止人 ...

  2. 【MySQL】如何最大程度防止人为误操作MySQL数据库?这次我懂了!!

    写在前面 今天,一位哥们打电话来问我说误操作了他们公司数据库中的数据,如何恢复.他原本的想法是登录数据库update一个记录,结果忘了加where条件,于是悲剧发生了.今天,我们不讲如何恢复误操作的数 ...

  3. 基于MySQL的-u选项实现如何最大程度防止人为误操作MySQL数据库

    在mysql命令加上选项-U后,当发出没有WHERE或LIMIT关键字的UPDATE或DELETE时,MySQL程序就会拒绝执行.那么,我们基于MySQL提供的这项设置,就可以轻松实现如何最大程度防止 ...

  4. linux系统下操作mysql数据库常见命令

    一. 备份数据库(如: test): ①可直接进入后台即可.(MySQL的默认目录:/var/lib/mysql ) ②输入命令: [root@obj mysql]# mysqldump -u roo ...

  5. linux命令行操作mysql数据库明细

    连接数据库==> mysql -uroot -p 输入root密码 进入mysql操作后 下面的命令不要忘了最后结尾的; 1.选择数据库命令: use <数据库名> 2.查看表的引擎 ...

  6. C++操作Mysql数据库/Linux下

    本文链接:https://blog.csdn.net/Tanswer_/article/details/72796570想用C++写项目,数据库是必须的,所以这两天学了一下C++操作Mysql数据库的 ...

  7. python【第十二篇下】操作MySQL数据库以及ORM之 sqlalchemy

    内容一览: 1.Python操作MySQL数据库 2.ORM sqlalchemy学习 1.Python操作MySQL数据库 2. ORM sqlachemy 2.1 ORM简介 对象关系映射(英语: ...

  8. Linux C语言操作MySQL

    原文:Linux C语言操作MySQL 1.MySQL数据库简介 MySQL是一个开源码的小型关系数据库管理系统,体积小,速度快,总体成本低,开源.MySQL有以下特性: (1) 使用C和C++编写, ...

  9. Go语言操作MySQL数据库

    Go语言操作MySQL数据库 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用 ...

随机推荐

  1. 原型模式故事链(4)--JS执行上下文、变量提升、函数声明

    上一章:JS的数据类型 传送门:https://segmentfault.com/a/11... 好!话不多少,我们就开始吧.对变量提升和函数声明的理解,能让你更清楚容易的理解,为什么你的程序报错了~ ...

  2. springboot上传文件大小限制的配置

    springboot配置文件: application.properties #配置文件传输 spring.servlet.multipart.enabled =true spring.servlet ...

  3. python之正则匹配match:search findall

    match:从开头位置匹配,只匹配一次,开头匹配不上,则不继续匹配 a,b,\w+ match(a,"abcdef") 匹配a >>> re.match(&quo ...

  4. 《Effective Java》读书笔记 - 11.序列化

    Chapter 11 Serialization Item 74: Implement Serializable judiciously 让一个类的实例可以被序列化不仅仅是在类的声明中加上" ...

  5. linux下插入U盘自动挂载后,用C获取其挂载点(cat /proc/mounts)

    现在已经能够通过libudev获取U盘插入时它的节点名(通过函数udev_device_get_devnode()),是/dev/sdb1 我现在的做法是读取/proc/mounts文件,找到有/de ...

  6. Mybaits二级缓存的使用与配置

    什么是延迟加载  resultMap中的association和collection标签具有延迟加载的功能. 延迟加载的意思是说,在关联查询时,利用延迟加载,先加载主信息.使用关联信息时再去加载关联信 ...

  7. 【C++进阶:结构体作为叶节点初始化】

    使用C++代码,表示叶节点的结构体初始化,以及使用new进行动态内存分配和赋值 #include <iostream> using namespace std; struct TreeNo ...

  8. 20191114 Spring Boot官方文档学习(4.7)

    4.7.开发Web应用程序 Spring Boot非常适合于Web应用程序开发.您可以使用嵌入式Tomcat,Jetty,Undertow或Netty创建独立的HTTP服务器.大多数Web应用程序都使 ...

  9. Spring Boot 为什么这么火?(二)

    Spring Boot 的火 网上连载了 Spring Boot 系列文章,没想到这一开始便与 Spring Boot 深度结缘. 技术社区 Spring Boot 的文章越来越多:Spring Bo ...

  10. 基于 @Scheduled 注解的 ----定时任务

    最常用的方法@Scheduled 注解表示起开定时任务 依赖 <dependencies> <dependency> <groupId>org.springfram ...