zoukankan      html  css  js  c++  java
  • MySQL优化

    表名大小写

    linux下的MySQL数据库默认是区分表名大小写的,如果要忽略表名大小写,添加一个配置即可

    # vi /etc/my.cnf
    在[mysqld]栏下增加:
    lower_case_table_names = 0
    
    #如果设置为1,则区分大小写,这是默认值
    lower_case_table_names = 1

    生产环境授权

    删除多余的用户和测试库

    mysql> drop user 'USER'@'主机域';
    mysql> drop database test;

    生产环境用户授权

    ①、博客、CMS等产品的数据库授权
    对于web连接用户授权尽量采用最小化原则,很多开源软件都是web界面安装,
    因此在安装期间除了select、insert、update、delete4个权限外,
    还需要create、drop等比较危险的权限。
    
    grant select,insert,update,delete,create,drop on blog.* to 'blog'@'%' identified by '123456';
    
    ②生成数据库表后,要收回create、drop授权
    revoke create,drop on blog.* from blog@'%';

    查看某用户所拥有的权限

    show grants for 'user_name'@'ip_address';

    防止mysql不加where条件导致误操作

    我们知道使用update、delete是一个非常危险的操作,如果使用这两个语句后面没有加where条件,那么将会导致整张表的记录被修改或删除。

    其实我们只要在登录的时候加上 “-U”参数就可以避免这种情况的发生

    # mysql -uroot -p123456 -U

    为了以后方便,我们可以设置别名并加入到环境变量

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

    安全删除binlog

    如果MySQL搭建了主从,或者数据库开启log-bin日志,那么随着时间的推移,数据库data目录下会产生大量的日志文件。生产环境中这些文件如果不做处理的话,会撑爆磁盘。

    解决办法

    如果你的数据库没有搭建主从同步,binlog日志也不用的情况下,可以将my.cnf文件下行删除或注释

    [mysqld]
    ...
    #log-bin=mysql-bin

    如果你需要这样的文件,那么建议在my.cnf中添加如下行,来限制binlog日志文件存在的时间,过期自动删除

    expire_logs_days = 7 # 只保留 7 天的日志文件

    如果你想清除所有的binglog日志,可以使用下面的命令

    mysql> reset master; # 清空所有 binlog 文件

    如果MySQL做了主从,那么上面的命令就不适合你,因为binglog文件删除过多的话,会导致数据不同步

    mysql> show slave statusG # 你首先要来 slave 上查看从库读 binlog 到了哪里 
    Master_Log_File: mysql-bin.000009 # 我们可以看到是 mysql-bin.000009
    
    # 我们可以在 master 中执行这条指令 , 将 binlog 文件删除至 mysql-bin.000009 前
    mysql> purge master logs to 'mysql-bin.000009'; 
    
    mysql> purge master logs before '2014-11-18 00:00:00'; # 将 binlog 文件删除至此日期前
  • 相关阅读:
    Android 中日期对话框的应用
    Unity3d 生命周期
    C#读写txt文件的两种方法介绍
    C# 获取文件夹下的所有文件夹及其文件
    NPOI 导出Excel
    SqlParameter 参数化模糊查询
    项目中的一个分页功能pagination
    MVC ---- ckeditor 循环遍历并绑定blur事件
    JQUERY链式操作实例分析
    mvc ---- ajax 提交过来的Json格式如何处理(解析)
  • 原文地址:https://www.cnblogs.com/sellsa/p/9335759.html
Copyright © 2011-2022 走看看