• Linux下MySQL5.7.18二进制包安装(手动添加配置文件my_default.cnf)


    本文出处:http://www.cnblogs.com/wy123/p/6815049.html 

    最新在学习MySQL,纯新手,对Linux了解的也不多,因为是下载的最新版的MySQL(MySQL5.7.18)二进制包,CentOS7.2下测试安装,方便以后折腾。
    大概步骤如下,安装删除反复折腾了几遍,按照以下步骤,应该没啥问题了。
    也没有想象中的复杂,大部分步骤都是参考网上的,照做就是了,出错的话,多尝试,多查资料。

    操作系统版本

       

    创建mysql组和用户

       

    下载最新版的MySQL 5.7.18二进制包,上传至服务器的usr/local目录下

     

    解压MySQL二进制包

    如下是解压之后的,并且重命名文件夹之后的文件信息

     

    更改所属的组和用户

    解压之后的MySQL文件包含的内容

    查看support-files文件夹的内容,发现并没有my_default.cnf默认的配置文件,如果没有默认的配置文件,需要手动创建一个my_default.cnf配置文件

      如下是一个最简化的配置文件,上传到supp-files文件夹中,当然其他配置选项可以根据需要自行修改,

      如下有一个配置是skip-grant-tables = 1,表示可以跳过密码登陆,登陆之后可以修改root的密码和远程访问权限,然后取消跳过密码验证,用root+密码可以正常登陆

    [mysqld]
    character-set-server=utf8
    basedir = /usr/local/mysql/
    datadir=/usr/local/mysql/data/
    log-error=/usr/local/mysql/mysqld.log
    port = 3306
    socket=/tmp/mysql.sock

    skip-grant-tables = 1

    如下,将上述默认配置文件上传至support-files文件夹中

    注册和初始化MySQL服务

      这一点比较坑,网上的教程大多是mysql_install_db 方式安装的,这一步也是遇到问题最最多的,折腾了好久,但是mysql_install_db 命令是不推荐的,也提示使用mysqld来安装
      在安装mysql 5.7.18的时候也是各种报错,经过各种尝试之后吧,采用如下命名方式安装,只要没有Error,警告信息Warning先不理它

    bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql/  --datadir=/usr/local/mysql/data/ 

     

    复制上述的my_default.cnf和mysql.server配置文件到etc目录,之前复制过该文件到etc目录,它这里提示是否覆盖,输入Y覆盖

     

    启动MySQL服务

    连接至MySQL,默认没有密码,直接回车后连接至MySQL

     

     

    修改MySQL的root密码

     

    修改可远程访问

      

    重启MySQL服务

    此时本地可以正常使用MySQL

      设置开机自动启动

      

     

    测试远程连接

    20171205:

    后面因为需要,自己又照做了一遍,安装是ok的,后面考虑使用python做一个自动化安装

    groupadd mysql
    cat /etc/group | grep mysql

    useradd -r -g mysql mysql
    cat /etc/passwd | grep mysql

    tar xvfz mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz

    chown -R mysql mysql-5.7.20/
    chgrp -R mysql mysql-5.7.20/

    ./bin/mysqld --initialize-insecure --user=mysql --basedir=/home/mysql/mysql-5.7.20 --datadir=/home/mysql/mysql-5.7.20/data/


    cp /home/mysql/mysql-5.7.20/support-files/mysql.server /etc/init.d/mysqld

    /etc/init.d/mysqld restart


    rm -rf /etc/selinux/targeted/active/modules/100/mysql
    rm -rf /var/lib/mysql
    rm -rf /usr/bin/mysql
    rm -rf /usr/lib64/perl5/vendor_perl/auto/DBD/mysql
    rm -rf /usr/lib64/perl5/vendor_perl/DBD/mysql
    rm -rf /usr/lib64/mysql
    rm -rf /usr/share/mysql

    设置mysql的环境变量

    export PATH=$PATH:/home/mysql/mysql-5.7.20/bin
    注:修改文件后要想马上生效还要运行# source /etc/profile不然只能在下次重进此用户时生效。

  • 相关阅读:
    [转]在nodejs使用Redis缓存和查询数据及Session持久化(Express)
    [转]最常用的商务职场英语邮件100个句式
    [转]玩转Angular2(4)--制作左侧自动定位菜单
    [转]Angular开发(十八)-路由的基本认识
    Consul之:服务注册与发现
    Consul之:key/value存储
    服务容错保护断路器Hystrix之六:服务熔断和服务降级
    延时队列:Java中的DelayQueue
    分布式延迟消息队列实现分析与设计
    基于redis的延迟消息队列设计
  • 原文地址:https://www.cnblogs.com/wy123/p/6815049.html
Copyright © 2020-2023  润新知