MySql5.7基础配置

[client]
#设置mysql客户端的字符集
default-character-set=utf8
[mysqld]
#设置mysql端口为3306
port = 3306
#设置mysql服务器的字符集
character-set-server=utf8
#设置存储引擎
default-storage-engine=INNODB
#开启MySQL log-bin日志
log-bin=mysql-bin
#binlog日志的格式,分别有STATEMENT、ROW、MIXED三种,影响主从复制
binlog-format=Row
#开启binlog的数据库
binlog-do-db=auth
#开启多个数据库的时候写多个
binlog-do-db=districter
#不开启binlog的数据库
binlog-ignore-db=mysql
#表名是否区别大小写
#0磁盘和查询全部区分
#1磁盘是小写,查询不区分大小写
#2磁盘区分大小写,查询是小写
lower_case_table_names=1
#开启慢sql日
slow_query_log=TRUE
#设置最大连接数
max_connections=500
#NO_ENGINE_SUBSTITUTION:如果需要的存储引擎被禁用或未编译,那么抛出错误。不设置此值时,用默认的存储引擎替代,并抛出一个异常
#STRICT_TRANS_TABLES:严格模式,出错时放弃语句放弃事务
#TRADITIONAL模式:严格模式,出错时执行语句放弃事务
#ANSI模式:宽松模式,更改数据执行语句,使其能尽量保存成功,会自动变更数据模式,报错不会回滚
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
#跳过表授权,可以无密码进入MySQL修改root用户密码,但是不能进行授权操作
#skip-grant-table
[mysqld_safe]
#日志路径
log-error=/var/log/mysql/mysqld.log
[mysql]
#设置字符集
default-character-set=utf8

配置路径和常用文件保存位置

默认配置文件路径: 配置文件:/etc/my.cnf 日志文件:/var/log//var/log/mysqld.log 服务启动脚本:/usr/lib/systemd/system/mysqld.service socket文件:/var/run/mysqld/mysqld.pid

常见问题

  • 启动出现MySQL-bin.xxx等文字字样的报错

    如果你不小心删除了mysql-bin.0000等文件。 mysql 可能会启动不起来。因为,mysql会根据index文件去找最新的日至。

    这时候会报错误如 某个mysql-bin.0000 文件找不到。 你需要清空 mysql-bin.index这个文件。然后再启动。

  • 安装完无法登陆,报密码错误

    在安装MySQL5.7的时候,会初始化随即密码,如果不手动选择生成模式,会在安装过程中,把密码输出到控制台显示,非常复杂的一个字符串,需要仔细找.如果在初始化的时候使用参数配置可以设置空密码,登录之后可以自行修改.

    mysqld --initialize-insecure --user=mysql ##生成空密码的初始化命令

  • timestamp类型的列,自动更新了

    explicit_defaults_for_timestamp会控制timestamp类型自己更新,需要在创建表的时候,把timestamp类型默认值设置为null

    如果已经创建完成,需要修改表结构,设置列的默认值为null

    alter table tablename modify column col_timestamp timestamp null default null;
  • 忘记root密码

    在my.cnf文件中的[mysqld]下添加一句绕过授权的配置,可以无密码登录,修改完root用户密码之后再把配置去掉,使用root登录之后就可以正常操作系统了.

  • 远程不能连接MySQL

    1.开启远程访问的权限

    grant all privileges on *.* to 'username'@'%' identified by 'password' with grant option;

    第一个 *.*表示所有的权限都可以远程使用 , %表示连接的IP地址 .

    2.服务器防火墙端口开启,默认是3306

    firewall-cmd --zone=public --add-port=3306/tcp --permanent

    firewall-cmd --zone=public --add-port=3306/udp --permanent

MySQL 优化记录:

  • where条件可以加索引的必须加上索引
  • 使用desc来查看有哪些联查没有使用到索引
  • 索引字段的类型和长度在 联查的表中必须一致(大坑,很多时候注意不到)
  • 可以把比较固定的联查表 , 单独拿出来查询完之后再进行其他表的联查
  • 把字段长度尽可能的缩短 , 避免不必要的空间浪费
  • 尽量使用定长字段
  • 索引的先后顺序 , 尽可能的调整到都可以使用上的状态(where 和 联查 的字段 都按索引的顺序书写)

MySql5.7基础配置的更多相关文章

  1. StackExchange.Redis帮助类解决方案RedisRepository封装(基础配置)

    本文版权归博客园和作者吴双本人共同所有,转载和爬虫,请注明原文地址.http://www.cnblogs.com/tdws/p/5815735.html 写在前面 这不是教程,分享而已,也欢迎园友们多 ...

  2. appach2.4 + php7 +mysql5.7.14 配置

    步骤1.首先打开Apache2.2\conf里面的httpd.conf文件.在里面找到: ServerRoot ,改成Appache所在目录  步骤二 在LoadModule 后面添加支持php7的扩 ...

  3. Hibernate 基础配置及常用功能(三)

    本章重点讲述Hibernate对象的三种状态以及如何配置二级缓存 有关Hibernate的三种状态如何相互转换网上都能查到,官方文档描述的也比较详细.这里主要是针对几个重点方法做代码演示. 一.状态转 ...

  4. Emacs学习心得之 基础配置

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Emacs学习心得之 基础配置 1.前言2.基础配置 一.前言 本篇博文记录了Emacs的一 ...

  5. nginx 的基础配置[转]

    nginx 的基础配置 分类: 工具软件2013-11-13 23:26 11人阅读 评论(0) 收藏 举报   目录(?)[-] 管理配置文件 全局配置 虚拟机server配置 location配置 ...

  6. freeRadius 基础配置及测试

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html 内部邀请码:C8E245J (不写邀请码,没有现金送) 国 ...

  7. win7 64bit下最新Apahe2.4.18+php7.0.2+MySQL5.7.10配置

    原文:win7 64bit下最新Apahe2.4.18+php7.0.2+MySQL5.7.10配置 一.说明 以前配置apache+php+mysql都是参考网上的,一般都没有什么问题.最近公司有个 ...

  8. Oracle 10g DataGuard手记之基础配置

    DataGuard为企业数据的高可用性,数据安全以及灾难恢复提供支持,一般由一个primary db与几个物理或逻辑standby db组成一个DataGuard配置. 系统环境 操作系统为windo ...

  9. SpringMVC最基础配置

    SpringMVC和Struts2一样,是前后台的一个粘合剂,struts2用得比较熟悉了,现在来配置一下SpringMVC,看看其最基础配置和基本使用.SpriingMVC不是太难,学习成本不高,现 ...

  10. 使用Java管理Azure(1):基础配置

    Azure针对Java开发人员提供了非常丰富的开发库,开发工具,和相关插件,让你通过Java对Azure进行服务管理和开发,本文第一步先介绍如何快速的配置Java开发工具,主要针对目前比较流行的Ecl ...

随机推荐

  1. centos6根分区扩容,非lvm

    1.关闭虚拟机,删除里面的快照,将磁盘扩容 2.根分区为sda3,开机后输入fdisk /dev/sda,d,3删除sda3,然后n,p,3,w创建sda3,扇区的开始位置要一致 3.growpart ...

  2. javascript【应用】debounce和throttle

    debounce防抖 在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时:典型的案例就是输入搜索:输入结束后n秒才进行搜索请求,n秒内又输入的内容,就重新计时. <div id=& ...

  3. Mongodb设置账号密码登录

    Mongodb设置.首先设置Data目类和Log目录,然后新建mongodb.conf,设置内容大体如下 port = 27017 #数据目录 dbpath = /usr/softs/data/db ...

  4. Finance财务软件(月度结转专题)

    支持按模板结转 默认结转模板 1.结转收入 借: 6001 主营业务收入 6051 其他业务收入 6301 营业外收入 贷: 4103 本年利润 2.结转成本.费用和税金 借: 4103 本年利润 贷 ...

  5. CF1793E Velepin and Marketing

    个人思路: 从小到大排序,因为一定先满足小的,再满足大的. 分组时,我们发现,同一组内的数在排序后的序列内连续,这样更优.因为(不会证). 我们预处理出对于每个出书数量的答案,查询时直接输出即可.我们 ...

  6. python中使用to_excel时如何不覆盖原有数据来新建sheet页

    经常通过各种三方库操作Excel时,会遇到各种问题.这个库不支持这个方法,那个库支持但是又会丢失原来的数据....都是问题! . . . import openpyxl import pandas a ...

  7. TypeScript Array(数组)

    TypeScript Array(数组) 数组对象是使用单独的变量名来存储一系列的值. 数组非常常用. 假如你有一组数据(例如:网站名字),存在单独变量如下所示: var site1="Go ...

  8. 「SOL」E-Lite (Ural Championship 2013)

    为什么这数据能水到可以枚举角度 ac 啊 # 题面 给你 \(n\) 个平面向量 \((x_i,y_i)\),对于每个 \(k=1\sim n\),求「从给出的 \(n\) 个向量中不重复地选择 \( ...

  9. vue组件淡入浅出动画

    点击动画 hello hello world! .test-enter, .test-leave-to { opacity: 0 } .test-enter-to, .test-leave { opa ...

  10. Python-pytest -> 在自动化测试中,如何切换不同的测试环境

    在构建自动化测试的脚本时候,我们可能会有不同环境的测试需求,如何实现在不同的测试环境之间切换呢?接下来介绍的这种方法,可以自定义命令行参数,从而根据不同的参数值实现不同环境的切换. 解决办法: 使用h ...