zoukankan      html  css  js  c++  java
  • mysql5.7 tar包安装

    下载安装包:https://dev.mysql.com/downloads/

     

    首先准备好mysql5.7.17的安装包,安装包放在  /data/software 目录下

    进入到 /usr/local 目录下,解压mysql安装包

    命令:   cd /usr/local

        tar -zxvf /data/software/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

    解压完成之后可以看到mysql的文件夹,为了方便后面的操作,先修改文件夹名称。

    命令:mv mysql-5.7.17-linux-glibc2.5-x86_64 mysql

    进入到mysql目录,可以发现,mysql5.7的版本和5.6的版本不同,没有/data目录,这里要自己创建一个data目录

    data目录并不限定存放位置,但是为了方便,这里依旧直接放在mysql的根目录下,

    命令:mkdir data

    再新建mysql的用户和用户组

    命令 :  groupadd mysql       #添加用户组

        useradd -r -s /sbin/nologin -g mysql mysql -d /usr/local/mysql     #新建msyql用户禁止登录shell

    改变mysql目录权限

    chown -R mysql.mysql /usr/local/mysql/

    接下来初始化数据库:

    命令:./bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

    5.7版本之后需要使用mysqld --initialize

    ./mysqld --initialize --user=mysql --basedir=/opt/mysql5.7/ --datadir=/opt/mysql5.7/data/

    如果提示“error while loading shared libraries: libaio.so.1: cannot open shared object”错误,

    执行yum install -y libaio 安装libaio即可。

    复制配置文件到 /etc/my.cnf 这里是mysql的基本配置问题

    命令:cp -a ./support-files/my-default.cnf /etc/my.cnf   #会有一个选择是否覆盖原有文件,直接按 y回车选择是就可以

    mysql5.7.18之后没有my-default.cnf文件,可以拿5.6或者5.7.17使用,代码如下:

    # For advice on how to change settings please see
    # http://dev.mysql.com/doc/refman/5.6/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.
    
    [mysqld]
    #skip-grant-tables
    # Remove leading # and set to the amount of RAM for the most important data
    # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
    # innodb_buffer_pool_size = 128M
    
    # Remove leading # to turn on a very important data integrity option: logging
    # changes to the binary log between backups.
    # log_bin
    
    # These are commonly set, remove the # and set as required.
     basedir = /opt/mysql5.7
    datadir = /opt/mysql5.7/data
    lower_case_table_names =1
    
    character_set_server=utf8 
    init_connect='SET NAMES utf8'
    # port = .....
    # server_id = .....
    # socket = .....
    
    # Remove leading # to set options mainly useful for reporting servers.
    # The server defaults are faster for transactions and fast SELECTs.
    # Adjust sizes as needed, experiment to find the optimal values.
    # join_buffer_size = 128M
    # sort_buffer_size = 2M
    # read_rnd_buffer_size = 2M 
    
    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

    把mysql放到本地系统服务中

    命令: cp -a ./support-files/mysql.server /etc/init.d/mysqld

    编辑刚才复制的 my.cnf文件

    命令:vim /etc/my.cnf

    这里我们只做基本的配置,其他采用默认了,毕竟初学,以简单为主。大多的参数我也不怎么理解

    配置好之后我们来启动mysql的服务

    命令:service mysql start  

    查看初始密码

    命令:cat /root/.mysql_secret

    复制下来初始的密码,做登录使用

    命令:bin/mysql -uroot -p

    密码就是刚才复制的密码,粘贴进去回车即可。

    到这里  mysql数据库就算是装好了,接下来只需要修改密码就可以了。

    命令:SET PASSWORD FOR 'root'@localhost=PASSWORD('123456');   #对应的换成你自己的密码即可了。

    查看并设置数据编码:

     SHOW VARIABLES LIKE 'character%';

    SET character_set_database = utf8 ;

    此步骤是本人亲自安装的过程,参照有其他IT朋友的博客。

    最后需要补充一下,按照上面的方式安装完成之后还不能进行远程的访问,需要修改允许远程连接,步骤如下:

    update user set host='%' where user='root' limit 1;
    flush privileges;

  • 相关阅读:
    一个.java源文件中可以有多个类吗?(内部类除外)有什么条件?
    接口中定义的变量为什么是常量
    关于String s = new String("xyz");创建了几个字符串对象?的问题
    java面试题之----JVM架构和GC垃圾回收机制详解
    Object中的clone方法
    C/S与B/S架构的区别和优缺点
    EJB是什么?
    JNDI是什么,怎么理解
    java中什么是上下文(servletContext)
    java面试题----String、StringBuffer、StringBudder区别
  • 原文地址:https://www.cnblogs.com/yinwutuan/p/9605825.html
Copyright © 2011-2022 走看看