MySQL的部分小问题解答

mysql用户的远程登录问题:
    通过查看user表的Host属性,可以看到mysql服务器允许用户访问服务器时使用的IP地址,如果是localhost则代表这个用户只可以本地访问,如果是%就代表这个用户可以从任何ip访问到服务器。同理,192.168.197.% 就代表这个用户可以从192.168.197.分段的下的任意IP访问服务器。

    因此只需要将Host属性修改为%就可以实现远程登录访问。

mysql的密码强度问题:
    通过安装validate_password组件可以保证的密码强度,方式是当用户尝试修改密码,组件会自动计算密码强度,如果强度不够,修改操作将不被允许。


mysql的字符集问题:
    mysql的默认字符集是latin,需要手动修改my.cnf配置文件以修改数据库默认字符集。在修改之前的建立的库需要使用命令进行手动修改,之后的会自动生效。表级和字段级别也是。
    在创建字段或者其他单位时,如果没有手动指定,会自动沿用上一个级别的字符集和比较规则。



utf8mb3和utf8mb4的区别:

    utf8 字符集表示一个字符需要使用1~4个字节,但是我们常用的一些字符使用1~3个字节
    就可以表示了。而字符集表示一个字符所用的最大字节长度,在某些方
    面会影响系统的存储和性能,所以设计MySQL的设计者偷偷的定义了两个概念:

    utf8mb3 :阉割过的 utf8 字符集,只使用1~3个字节表示字符
    utf8mb4 :正宗的 utf8 字符集,使用1~4个字节表示字符。

如何正确修改mysql配置?
    生产环境上是禁止重启MySQL服务的,所以采用 临时设置方式(sql命令)    + 永久设置方式(配置文件) 来解决线上的问题,那么即便是有一天真的重启了MySQL服务,也会永久生效了。


sql_mode的宽松模式和严格模式?
    指的是对sql语句的检验程度,宽松模式可以允许少量不符合规定的sql语句执行而不报出任何错误,目的使得大多数sql语句符合标准的sql语法,从而避免在不同厂商的数据库之间切换时,需要修改大量
sql语句的问题。
    但是这会带来很多潜在的,难以排查的问题,所以现在普遍是默认严格模式,即必须满足当前数据库的所有要求的sql语句才可以被正常执行。
  • 8
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值