版本

centos 7

mysql-5.7.16

安装步骤

转载自 CentOS下MySql 5.7.16 解压版安装

下载

官网下载地址:https://dev.mysql.com/downloads/

wget http://dev.MySQL.com/get/Downloads/MySQL-5.7/mysql-5.7.16-Linux-glibc2.5-x86_64.tar.gz

安装

  1. 创建目录

    mkdir  /usr/local/mysql/
    
  2. 首先将安装包复制到 /user/local 目录下,进入local目录,解压安装包

    #tar -xvzf mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz  -C   /usr/local/mysql/
    

​ 这里要注意,解压后的目录名是mysql(别的也可以,只是后续的操作需要注意它的路径)

  1. 创建mysql用户:

    #groupadd mysql
    

​ 可以查看 用户是否创建成功

#cat /etc/group
#useradd -r -g mysql mysql
  1. 进入mysql 目录中 ,执行安装程序:

    #cd /usr/local/mysql/
    yum install libaio
    
  2. 创建日志目录

    mkdir /var/log/mariadb/
    
    chown mysql:mysql /var/log/mariadb/
    
    mkdir /var/run/mariadb
    
    chown mysql:mysql /var/run/mariadb
    

如果不创建分别会出现如下错误:

​ touch: 无法创建”/var/log/mariadb/mariadb.log”: 没有那个文件或目录

​ chmod: 无法访问”/var/log/mariadb/mariadb.log”: 没有那个文件或目录

  1. 修改my.cnf配置文件

    #cd  /usr/local/mysql/support-files
    #cp  my-default.cnf  /etc/my.cnf
    #cp  mysql.server  /etc/init.d/mysql
    #vim /etc/my.cnf
    

img

​ 将socket 修改为 socket=/tmp/mysql.sock ,否则会出现以下问题

​ ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)

  1. 初始化数据库

    cd /usr/local/mysql
    ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql
    

出现以下语句表示成功,并显示root临时密码。

[Note] A temporary password is generated forroot@localhost: 这个冒号后面就是临时密码

  1. 启动数据库

# ./bin/mysqld_safe --user=mysql

​ 这时可以查看日志是否启动成功

# cat /var/log/mariadb/mariadb.log

​ Version: ‘5.7.16’ socket: ‘/var/lib/mysql/mysql.sock’ port: 3306 MySQL Community Server (GPL)

  1. 修改root用户密码

    ./bin/mysql -uroot -p
    然后输入临时密码进入数据库,执行以下修改密码命令。
    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '这里写密码';
    mysql> flush privileges;
    
  2. 设置系统自动启动

    cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
        
    chkconfig --add mysqld
        
    chkconfig --level 2345 mysqld on
    
  3. 添加环境变量

# vim /etc/profile

​ 在最后添加以下语句:

export MYSQL_HOME="/usr/local/mysql"export PATH="$PATH:$MYSQL_HOME/bin"

​ 注:MYSQL_HOME的路径即mysql的绝对路径

保存退出 ,刷新环境变量

# source /etc/profile

  1. 修改mysql的编码集,设置大小写不敏感

# vim /etc/my.cnf

img

  1. 重启数据库

# service mysq restart

至此 mysql 完成了安装。

配置外网访问

参考博文:配置MySQL服务器使得外网可以连接

如果是刚安装完外网不能访问,一般是因为 mysql 的权限控制限制了外网访问。

执行

sudo mysql -uroot -p[你的密码]

use mysql

grant all privileges on *.* to 'root'@'[允许的ip]' identified by '[密码]' with grant option;
flush privileges;

其中 [允许的ip] 如果设置为 % 的话则表示所有 ip 都可以访问,[密码] 表示外网访问的密码是什么。比如我设置成所有 ip 都可访问,密码是 root,则命令如下:

grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
flush privileges;

终端导出数据库脚本

mysqldump -u root -p [数据库名] > /导出文件名
如
mysqldump -u root -p skill > /skill.sql