有不少开发人员在操作MySQL数据库的时候都遇到过误操作的情况,例如更新数据库的时候update语句忘记加上where条件,就会造成极为悲剧的结果。本文就针对防止MySQL数据库误操作的方法做出如下详解:

1、mysql帮助说明

# mysql --help|grep dummy

-U, --i-am-a-dummy Synonym for option --safe-updates, -U.

i-am-a-dummy FALSE

在mysql命令加上选项-U后,当发出没有WHERE或LIMIT关键字的UPDATE或DELETE时,mysql程序就会拒绝执行

2、指定-U登录测试

# mysql -uroot -poldboy123 -S /data/3306/mysql.sock -U

Welcome to the MySQL monitor. Commands end with ; or g.

Your MySQL connection id is 14

Server version: 5.5.32-log MySQL Community Server (GPL)

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql> delete from oldboy.student;

ERROR 1175 (HY000): You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column

mysql> quit

Bye

提示:此处不加条件无法删除,目的达到。

3、做成别名防止DBA误操作

# alias mysql='mysql -U'

# mysql -uroot -poldboy123 -S /data/3306/mysql.sock

Welcome to the MySQL monitor. Commands end with ; or g.

Your MySQL connection id is 15

Server version: 5.5.32-log MySQL Community Server (GPL)

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql> delete from oldboy.student;

ERROR 1175 (HY000): You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column

mysql> delete from oldboy.student where Sno=5;

Query OK, 1 row affected (0.02 sec)

mysql> quit

Bye

# echo "alias mysql='mysql -U'" >>/etc/profile

# . /etc/profile

# tail -1 /etc/profile

alias mysql='mysql -U'

结论:在mysql命令加上选项-U后,当发出没有WHERE或LIMIT关键字的UPDATE或DELETE时,mysql程序拒绝执行

您可能感兴趣的文章:MySQL数据库误操作后快速回滚的方法MySQL中truncate误操作后的数据恢复案例详解MySQL误操作后怎样进行数据恢复MySQL误操作后快速恢复数据的方法关于mysql数据库误删除后的数据恢复操作说明浅析Mysql 数据回滚错误的解决方法Mysql误操作后利用binlog2sql快速回滚的方法详解

mysql怎么防止误操作_MySQL数据库防止人为误操作的实例讲解相关推荐

  1. mysql高级操作_mysql数据库表的高级操作

    1.复制表结构 语句:create table 表b like 表a; 说明:a.只是使用表a的结构重新创建一个表b. b.只是复制表a的结构,不包含表的数据. 2.备份SQl执行结果 语句:crea ...

  2. python数据库模糊查询_Python操作mongodb数据库进行模糊查询操作示例

    本文实例讲述了Python操作mongodb数据库进行模糊查询操作.分享给大家供大家参考,具体如下: # -*- coding: utf-8 -*- import pymongo import re ...

  3. mysql 事务sqlserver_SQLServer数据库:事务与隔离级别实例讲解

    本文主要向大家介绍了SQLServer数据库:事务与隔离级别实例讲解,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助. 上班途中,你在一处ATM机前停了下来.正当你在敲入密码 ...

  4. mysql数据库恢复操作_MySQL 数据库误删后的数据该如何恢复操作?

    原标题:MySQL 数据库误删后的数据该如何恢复操作? 纯手工打造每一篇开源资讯与技术干货,数十万程序员和Linuxer已经关注. 在日常运维工作中,对于数据库的备份是至关重要的!数据库对于网站的重要 ...

  5. mysql 四大基础操作_mysql数据库的基本操作

    mysql数据库的基本操作 首先我们要把mysql装好 mkdir chen/ mount.cifs //192.168.100.23/LNMP chen/ [root@localhost ~]# y ...

  6. mysql修改级联表数据_MySQL数据库 外键,级联, 修改表的操作

    1.外键: 用来建立两张表之间的关系 - 一对多 - 多对多 - 一对一 研究表与表之间的关系: 1.定义一张 员工部门表 id, name, gender, dep_name, dep_desc - ...

  7. mysql一些基本sql操作_MySql数据库的一些基本操作---------------SQL语法

    MySql数据库是比较常用的关系型数据库,操作用的是sql语句,下面来说一说MySql的一些基本操作 MySql数据库是一种C/S型的模式,即客户端/服务器端,对应到具体应用上,便是bin目录下的my ...

  8. mysql 本地热备_MySQL 数据库热备的操作

    注意:服务器数据库热备 效果:缓解单台数据库连接量过大造成的响应超时问题,缓解高并发情况的响应问题: 可做操作:读写分离操作,将 主服务器数据库 设置[写]操作: 从服务器数据库 设置[读]操作: 此 ...

  9. mysql数据库在什么程序操作_MySQL数据库基本操作(一)

    在安装MySQL后,会附带一些数据库,系统数据库会记录一些必需的信息,用户无法直接修改,附带的这些数据库作用: information--schema:存储系统中的一些数据库对象信息,如用户表信息.列 ...

最新文章

  1. Spring Hibernate JPA 联表查询 复杂查询
  2. 如何把文件隐藏在一张图片里面
  3. BlogEngine .NET 日期控件显示问题
  4. java获取月末日期_Java用于取得当前日期相对应的月初,月末,季初,季末,年初,年末时间详解...
  5. 菲律宾谋定农业大建特建构想 对话国际农民丰收节贸易会
  6. java实现多文件上传至本地服务器
  7. typecho插件库 TeStore 方便监控插件版本
  8. python猜积木_Python中乐高积木——函数
  9. mysql tddl_tddl的使用
  10. 动词原形、过去式、过去分词
  11. 关于mis系统思维导图
  12. Sentinel2 哨兵2数据下载方法(USGS)-史上最全讲解
  13. foobar2000播放的一些使用技巧
  14. h5策划书_DIYH5|3.12世界睡眠日H5策划方案
  15. 手机短信验证码一次性 需要第三方平台
  16. CSS图片响应悬停效果
  17. 讯飞输入法电脑版语音识别方法
  18. linux内核熵池,快速的给内核熵池喂随机数
  19. 产学互为表里,携手方见大道:华为云AI院长峰会的价值思考
  20. 基于最新WEB技术的Web SCADA平台构建数字化车间

热门文章

  1. 字符设备之register_chrdev与register_chrdev_region
  2. -webkit-overflow-scrolling:touch
  3. WinAPI: waveOutGetPlaybackRate - 获取输出设备当前的播放速度设置(默认速度值的倍数)...
  4. 关于BCH交易规范排序(CTOR)的优缺
  5. 巴曙松:收到了Roger送的BCH,已全捐给慈善基金
  6. 6月27日比特币现金消息总结
  7. weblogic 启动项目失败,JMS 队列通过http 方式访问
  8. leetcode-34-在排序数组中查找元素的第一个和最后一个位置
  9. Oracle 基础教程
  10. 资深首席架构师眼中的架构应该是怎样的?【转】