美文网首页
离线版Mysql安装(5.7)

离线版Mysql安装(5.7)

作者: _li_ | 来源:发表于2016-08-24 21:46 被阅读913次

    背景

    5.7版本的mysql离线版安装有很多坑,在此一一记载。

    下载

    下载页面

    下载64位zip包,

    解压

    解压文件。

    初始化配置

    在文件目录下,找到my-default.ini文件,复制并重命名my.ini,然后指定data目录。

    # For advice on how to change settings please see
    # http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
    # *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
    # *** default location during install, and will be replaced if you
    # *** upgrade to a newer version of MySQL.
    
    
    [client]
    port=3306 
    [mysql]
    default-character-set=utf8
    [mysqld]
    port=3306 
    basedir="D:/DevelopTools/mysql5_7_14" 
    datadir="D:/DevelopTools/mysql5_7_14/data" 
    character-set-server=utf8
    default-storage-engine=INNODB
    

    安装mysql服务

    需要在管理员权限下执行cmd。
    在bin目录下,

    D:\DevelopTools\mysql5_7_14\bin>mysqld --install
    Service successfully installed.
    

    启动mysql

    在bin目录下,执行

    D:\DevelopTools\mysql5_7_14\bin>net start mysql
    

    报错

    D:\DevelopTools\mysql5_7_14\bin>net start mysql
    MySQL 服务正在启动 ..
    MySQL 服务无法启动。
    
    服务没有报告任何错误。
    
    请键入 NET HELPMSG 3534 以获得更多的帮助。
    
    

    查看mysql日志

    在data目录下,查看*.err文件。

    2016-08-23T13:20:42.303713Z 0 [Note] Plugin 'FEDERATED' is disabled.
    MySQL: Table 'mysql.plugin' doesn't exist
    2016-08-23T13:20:42.305713Z 0 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
    2016-08-23T13:20:42.308713Z 0 [Note] Salting uuid generator variables, current_pid: 3656, server_start_time: 1471958439, bytes_sent: 0, 
    2016-08-23T13:20:42.337715Z 0 [Note] Generated uuid: '644d3f84-6934-11e6-9f6d-507b9d0180aa', server_start_time: 1471962095, bytes_sent: 109367744
    2016-08-23T13:20:42.338715Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 644d3f84-6934-11e6-9f6d-507b9d0180aa.
    2016-08-23T13:20:42.365717Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
    2016-08-23T13:20:42.368717Z 0 [Warning] Failed to set up SSL because of the following SSL library error: SSL context is not usable without certificate and private key
    2016-08-23T13:20:42.369717Z 0 [Note] Server hostname (bind-address): '*'; port: 3306
    2016-08-23T13:20:42.372717Z 0 [Note] IPv6 is available.
    2016-08-23T13:20:42.373717Z 0 [Note]   - '::' resolves to '::';
    2016-08-23T13:20:42.374717Z 0 [Note] Server socket created on IP: '::'.
    2016-08-23T13:20:42.380718Z 0 [Warning] Failed to open optimizer cost constant tables
    2016-08-23T13:20:42.382718Z 0 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist
    

    解决方案

    http://dev.mysql.com/doc/refman/5.7/en/data-directory-initialization-mysqld.html

    清空data目录内容

    首先需要情况data目录下内容,否则会报错

    D:\DevelopTools\mysql5_7_14\bin>mysqld --initialize
    2016-08-23T13:27:23.129639Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is
     deprecated. Please use --explicit_defaults_for_timestamp server option (see doc
    umentation for more details).
    2016-08-23T13:27:23.132639Z 0 [ERROR] --initialize specified but the data direct
    ory has files in it. Aborting.
    2016-08-23T13:27:23.132639Z 0 [ERROR] Aborting
    
    执行初始化命令
    D:\DevelopTools\mysql5_7_14\bin>mysqld --initialize
    
    启动服务
    D:\DevelopTools\mysql5_7_14\bin>net start mysql
    MySQL 服务正在启动 .
    MySQL 服务已经启动成功。
    

    卸载myql服务

    在mysql的bin目录下:

    mysqld  --remove
    

    mysql登录

    跳过密码

    首次登录时,设置跳过密码,可以进入数据库修改密码信息。
    my.ini

    # 跳过密码验证  
    skip-grant-tables
    

    修改密码

    mysql> use mysql
    Database changed
    mysql> update user set authentication_string=password("root") where user="root";
    
    Query OK, 1 row affected, 1 warning (0.00 sec)
    Rows matched: 1  Changed: 1  Warnings: 1
    
    mysql> flush privileges;
    Query OK, 0 rows affected (0.02 sec)
    

    重启服务后登录。

    D:\DevelopTools\mysql5_7_14\bin>net stop mysql
    MySQL 服务正在停止.
    MySQL 服务已成功停止。
    
    
    D:\DevelopTools\mysql5_7_14\bin>net start mysql
    MySQL 服务正在启动 .
    MySQL 服务已经启动成功。
    

    相关文章

      网友评论

          本文标题:离线版Mysql安装(5.7)

          本文链接:https://www.haomeiwen.com/subject/hvjprttx.html