0%

MySQL 5.7安装

mysql 5.7的数据库安装方式和之前使用是mysql 5.1的安装方式有点不一样,在此特意记录一下。

  1. 下载包

    1
    wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
  2. 解压

    1
    2
    tar -zxvf mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz
    mv mysql-5.7.12-linux-glibc2.5-x86_64 /usr/local/mysql
  3. 初始化

    1
    2
    3
    4
    5
    useradd -M -s /sbin/nologin  mysql
    mkdir -p /data/mysql
    chown mysql /data/mysql
    cd /usr/local/mysql
    ./bin/mysqld --initialize --user=mysql --datadir=/data/mysql

    注意,这一步最后一行会有一个提示
    [Note] A temporary password is generated for root@localhost: B*s1i(*,kXwg
    最后面的字符串为root密码。

  4. SSL设置

    1
    ./bin/mysql_ssl_rsa_setup --datadir=/data/mysql
  5. 设置为服务

    1
    2
    3
    4
    5
    6
    cp support-files/my-default.cnf  /etc/my.cnf
    vim /etc/my.cnf //编辑或者修改
    basedir = /usr/local/mysql
    datadir = /data/mysql
    port = 3306
    socket = /tmp/mysql.sock
    1
    2
    3
    4
    5
    cp support-files/mysql.server /etc/init.d/mysqld
    vim /etc/init.d/mysqld
    //编辑或者修改
    basedir=/usr/local/mysql
    datadir=/data/mysql
  6. 启动服务
    service mysqld start

  7. 设置root密码

    1
    2
    3
    使用初始化密码登录
    /usr/local/mysql/bin/mysql -uroot -p'B*s1i(*,kXwg' //进入后直接设置密码
    mysql>set password = password('mypass'); //一定要设置一下新密码

    退出来,再使用新的密码登录就可以了

  8. 修改字符集
    修改my.cnf

    1
    2
    3
    4
    5
    在[mysqld]下添加
    character-set-server=utf8

    在[client]下添加
    default-character-set=utf8

对于忘记初始化密码的情况

还有一种情况,就是不知道初始化密码

1
2
3
4
5
6
7
8
9
vi /etc/my.cnf
在[mysqld]下面增加一行
skip-grant-tables
重启 /etc/init.d/mysqld restart

/usr/local/mysql/bin/mysql -uroot
mysql> update user set authentication_string=password('123333') where user='root';
退出来后,更改my.cnf,去掉刚加的 skip-grant-tables
重启 /etc/init.d/mysqld restart

此就可以使用新的密码了。