六种关联查询:
内连接(INNER JOIN,分类等值连接、不等值连接、自连接)
外连接(LEFT JOIN/RIGHT JOIN)
联合查询(UNION JOIN/UNION ALL)
交叉连接(CROSS JOIN)
全连接(FULL JOIN,即查询完累积,MySQL不支持全连接,通过扩展实现)
SQL注入安全
一、SQL注入攻击的总体思路 :
1.寻找到SQL注入的位置
2.判断服务器类型和后台数据库类型
3.针对不通的服务器和数据库特点进行SQL注入攻击
二、防止SQL注入的五种方法:
- 检查变量数据类型和格式
- 过滤特殊符号
- 绑定变量,使用预编译语句
- 使用正则表达式过滤传入的参数
- 字符串过滤
MySQL管理安全方案
使用预处理语句防SQL注入
写入数据库的数据要进行特殊字符的转义
查询错误信息不要返回给用户,将错误记录到日志
尽量用PDO、MySQLi。MySQL函数在新版本中趋于淘汰,不能很好的支持预处理语句
定期做数据备份
不给查询用户root权限,合理分配权限
关闭远程访问数据库权限
修改root口令,不用默认口令,使用较复杂的口令
删除多余的用户
改变root用户的名称
限制一般 用户浏览其他库
限制用户对数据文件的访问权限