오늘 전 회사 동료가 전화해서 제가 실수로 조작한 데이터베이스 데이터를 복구하는 방법을 물었습니다. 그의 원래 생각은 데이터베이스에 로그인하여 기록을 업데이트하는 것이었지만, 위치를 추가하는 것을 잊어버렸고 비극이 일어났습니다. 오늘은 오용된 데이터를 복구하는 방법에 대해 이야기하지 않고, 이러한 문제를 소스에서 방지하는 방법에 대해 이야기하겠습니다. 이것이 유사한 문제를 피하기 위한 근본적인 조치입니다. 괜찮은.
1. MySQL 도움말 설명
[root@liuyazhuang151 ~]# 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 login test
[root@liuyazhuang151 ~]# mysql -uroot -proot -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의 오작동을 방지하기 위해 별칭을 만듭니다.
rree4. 결론:
이 추가됩니다. MySQL 명령 -U 옵션을 선택한 후 WHERE 또는 LIMIT 키워드 없이 UPDATE 또는 DELETE를 실행하면 mysql 프로그램이 실행을 거부합니다.
위는 MySQL의 내용입니다 - 인간의 오용을 방지하는 방법 MySQL 데이터베이스 및 기타 관련 콘텐츠 PHP 중국어 웹사이트(www.php.cn)를 주목하세요!