MySQL 5.7.6 发布了快一年了, 官方的说法是比起前几代有很大的安全性提升,性能报告也是比之前版本提升了 2、3倍。

性能上这么大的提升,安全上也这么大的改进,怎么能不心动呢,这几天出于好奇,准备对 5.7.6 版本一探究竟。

我到官网下载了个 5.7.6 GPL 版本到本地,准备跑起来试试看,想说的是 现在的部署方式和一前的部署方式有一定的差别。

-----------------------下面直接来安装吧---------------------------

首先来回顾一下以前我们是个怎样的步骤自定义部署MySQL:

1.创建 Data 目录

2.编辑配置文件

3.mysql_install_db 初始化系统库

4.mysqld_safe 以 watch 方式启动Mysql服务

5.mysqladmin password   设置root密码

6.mysql 连接进去,就可以使用了。

新版本的部署稍微有一点不同的地方:

1.在初始化系统库的时候 不再使用 mysql_instatll_db 完成,改由 mysqld  --initialize 来完成。
2.系统库初始化完成后 库里不再有 test 库 ,root 密码已经随机的给我们生成好了
3.当然,系统给我们随机分配的 密码是不能长久使用的, 我们需要在第一次进入系统后进行修改密码,才能继续后续的操作。
 
 
--------OK 切入正题吧-----------
1.初始化系统库
  svan-mac:mysql-5.7.9-osx10.10-x86_64 xiean$ ./bin/mysqld  --initialize  --datadir=/Users/xiean/workdir/mysql/mydata --basedir=/Users/xiean//tools/protect/mysql-5.7.9-osx10.10-x86_64
 
2.配置SSL (可选)
 初始化完成后我我们可以配置SSL,当然也可以不用配置
svan-mac:~ xiean$ mysql_ssl_rsa_setup --datadir=/Users/xiean/workdir/mysql/mydata/
这一步配置使得我们可以方便的使用SSL方式来链接我们的数据库,当然性能上边也有一定的损失,据 innside 君测试,性能损失约为25%。
 
初始化完成后 值得注意后边 会有个默认的 root 密码:
2015-12-04T06:51:25.434592Z 1 [Note] A temporary password is generated for root@localhost: si4J#m<an#U%
 
3.启动MySQL服务
svan-mac:~ xiean$ mysqld_safe --defaults-file=/Users/xiean/workdir/mysql/my.cnf &
当系统库初始化完成后我们就可以启动mysql,开始使用了;
 
在start mysql 的时候会遇到一些其它的问题:
最常见的问题:
2015-12-04T06:55:47.618298Z 0 [ERROR] InnoDB: The Auto-extending innodb_system data file '/Users/xiean/workdir/mysql/mydata/ibdata1' is of a different size 768 pages (rounded down to MB) than specified in  the .cnf file: initial 3072 pages, max 0 (relevant if non-zero) pages!
 
这句话大概的意思就是:
 
我们配置文件配置的  ibdata文件大小和 当前的ibdata 文件大小不匹配,要怎么改呢?
 
注意两个数字: 768 ,3072
 
768     是指刚才 初始化完成后, mysql 帮我们生成的 ibdata 文件 的 page 数
3072   是指我们配置文件的 ibdata 文件的 pages 数
 
如果你不清楚 每个page 的大小,可以这样子计算:${配置文件.ibdataSize}/3072 
默认情况 page_size = 16KB
 
那么根据系统给我们初始化完成的ibdata文件大小, 我们需要修改 配置文件ibdata size : 768*16/1024MB 
 
好了,调整了以上值之后我们就可以把mysql拉起来了。
 
4.开始使用MySQL
 
我习惯性的,先看一下当前存在的DB ;结果是 mysql 不让我看,说是先让重置密码,OK,那就重置密码吧,到官网doc上找了一下语法:
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
 
mysql> alter user user() identified by 'abc123';
Query OK, 0 rows affected (0.02 sec)
下面我们可以随心所欲的干我们想干的事了。
 
5.7都说安全上边是个提升,我们打开 binlog 文件查看,可以发现刚才我们执行的命令,这里的密码已经不再是 明文了:
ALTER USER 'root'@'localhost' IDENTIFIED WITH 'mysql_native_password' AS '*6691484EA6B50DDDE1926A220DA01FA9E575C18A' 
 

MySQL5.7 初使用的更多相关文章

  1. centos7 下安装rpm的mysql 5.7

    在centos7下安装mysql5.7 一:下载mysql 去官网上去下载:这里我下载的二进制格式的 https://dev.mysql.com/downloads/mysql/ 去下载对应平台的my ...

  2. CentOS安装MySQL-5.6.10+安全配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装MySQL之前,请确保已经使用yum安装了各类基础组件,具体见<CentOS安装LNMP环境的基础组件& ...

  3. mysql5.5手册读书日记(1)

    <?php //mysql语句使用技巧 /* * 我的数据库是5.5.2 * * 查询当前用户的登陆的名字 * select user(); * * 查询当前mysql服务器时间和服务器版本 * ...

  4. Linux centOS7 下安装mysql5.7.10

    1:下载二进制安装包 http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz 2:解压到 ...

  5. Centos7+Apache2.4+php5.6+mysql5.5搭建Lamp环境——为了wordPress

    最近想搭建个人博客玩玩,挑来挑去发现口碑不错的博客程序是wordpress,简称wp.虽然是学java路线的程序员,但因入行时间太短,至今没有发现较为称手开源的博客程序,如果各位大神有好的推荐,也希望 ...

  6. CentOS6.5+mysql5.1源码安装过程

    一:先安装依赖包(不然配置的时候会报错的!) yum -y install ncurses* libtermcap* gcc-c++* 新建mysql用户 [root@HE1Packages]# gr ...

  7. hibernate--CRUD初体验

    hibernate的crud操作初体验. 看具体实例 package com.fuwh.model; import javax.persistence.Column; import javax.per ...

  8. window安装mysql5.7解压版(解决乱码问题)

    ♣安装mysql两种方法 ♣下载mysql5.7解压版 ♣配置步骤 ♣解决服务无法启动 ♣解决乱码 1.安装mysql两种方法 MySQL安装文件分为两种,一种是msi格式的,一种是zip格式的.如果 ...

  9. linux上安装mysql5.6

    CentOS-6.6+MySQL-5.6 部署环境操作系统:CentOS-6.6-x86_64-bin-DVD1.isoMySQL 版本:mysql-5.6.26.tar.gz操作用户:root系统 ...

随机推荐

  1. 20155339 2016-2017-2 《Java程序设计》第1周学习总结

    20155339 2016-2017-2 <Java程序设计>第1周学习总结 教材学习内容总结 第一章 一直以为JAVA应该只是一种语言,研读了书本之后发现原来JAVA也代表了解决问题的平 ...

  2. C#数据流

    C#编程中数据流的使用一直不很熟练,没有一个系统的认识,但是它的重要性显然不言而喻.System.IO下的Stream类是所有数据流的基类,当我们对数据进行逐字节操作时,首先需要将数据转换为数据流.C ...

  3. oracle-11g-64位安装和plaql

    1.oracle卸载 如果是新装,请跳过此步骤 卸载步骤: 1.停止所有服务 2.用自带删除软件,删除所有目录 3.打开注册表: -->运行regedit,删除HKEY_LOCAL_MACHIN ...

  4. 【MongoDB安装】MongoDB在centos linux平台安装

    参考:http://www.runoob.com/mongodb/mongodb-linux-install.html 一..下载安装包 下载方式: 1.登录官网download,然后通过xftp传到 ...

  5. java阻塞队列之LinkedBlockingQueue

    LinkedBlockingQueue是BlockingQueue中的其中一个,其实现方式为单向链表,下面看其具体实现.(均为JDK8) 一.构造函数 在LinkedBlockingQueue中有三个 ...

  6. Spring学习(十三)-----Spring 表达式语言(Spring EL)

    本篇讲述了Spring Expression Language —— 即Spring3中功能丰富强大的表达式语言,简称SpEL.SpEL是类似于OGNL和JSF EL的表达式语言,能够在运行时构建复杂 ...

  7. QT在子窗口外单击关闭子窗口

    网上查到了好多种方法,1.添加过滤器(eventFilter),2.重写鼠标单击事件,这两种方法都要判断鼠标单击位置是不是在子窗口上.而且在可编辑控件上如(下拉框.文本编辑框等),父窗口会直接传递到可 ...

  8. sqlserver(2012)清理tempdb

    当数据库运行时间长了之后,tempdb变得特别大,几十G,受不了啊:当然我们知道重启 SQL Server服务的话,tempdb数据库会自动重新创建的,从而使 tempdb 回归到初始大小.但是这是生 ...

  9. 英特尔® 实感™ 前置摄像头 SR300 和 F200 的比较

    原文地址 简介 SR300 是支持 Microsoft Windows 10 操作系统的第二代英特尔® 实感™ 前置摄像头. 与 F200 摄像头型号相似,SR300 使用编码光深技术,在更小范围内创 ...

  10. String、StringBuffer、StringBuilder有什么区别

    区别 先说说String和StringBuffer/StringBuilder: String是标准的不可变类,是一个字符串常量池,并且声明的对象在方法中是唯一存在的. StringBuffer/St ...