centos 7 安装 mysql5.7.25

检查mysql组和用户是否存在,如无创建。

[root@localhost ~]# cat /etc/group | grep mysql
[root@localhost ~]# cat /etc/passwd | grep mysql
如无,执行添加命令:
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd -r -g mysql mysql
//useradd -r参数表示mysql用户是系统用户,不可用于登录系统。

解压TAR包,更改所属的组和用户
[root@localhost ~]# tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz -C /var/local/
[root@localhost ~]# mv /var/local/mysql-5.7.25-linux-glibc2.12-x86_64 /var/local/mysql-5.7.25
[root@localhost ~]# cd /var/local/
[root@localhost local]# chown -R mysql mysql-5.7.25/
[root@localhost local]# chgrp -R mysql mysql-5.7.25/
[root@localhost local]# cd mysql-5.7.25/
[root@localhost mysql-5.7.25]# mkdir data/

安装和初始化数据库
[root@localhost mysql-5.7.25]# bin/mysql_install_db --user=mysql --basedir=/var/local/mysql-5.7.25/ --datadir=/var/local/mysql-5.7.25/data/
在/etc/下面新建一个my.cnf文件,把下面的配置拷贝到文件中,保存。

[mysql]

设置mysql客户端默认字符集

default-character-set=utf8
[mysqld]

跳过权限验证,不用验证就操作MYSQL

skip-grant-tables

选项就能禁用DNS解析

skip-name-resolve

设置3306端口

port=3306

设置mysql的安装目录

basedir=/var/local/mysql-5.7.25

设置mysql数据库的数据的存放目录

datadir=/var/local/mysql-5.7.25/data

允许最大连接数

max_connections=200

服务端使用的字符集默认为8比特编码的latin1字符集

character-set-server=utf8

创建新表时将使用的默认存储引擎

default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=16

给my.cnf文件赋予mysql的权限
[root@localhost mysql-5.7.25]# chown mysql:mysql /etc/my.cnf
[root@localhost mysql-5.7.25]# cp -a ./support-files/mysql.server /etc/init.d/mysql
[root@localhost mysql-5.7.25]# cd bin/
[root@localhost bin]# ./mysqld_safe --user-mysql &

把mysql加入环境变量
[root@localhost bin]# vim /etc/profile
在最后面加入 export PATH=/var/local/mysql-5.7.25/bin:$PATH
[root@localhost bin]# source /etc/profile

设置开机启动
[root@localhost bin]# chkconfig --level 35 mysql on

启动MySQL服务
[root@localhost ~]# service mysql start

查看MySQL生成的初始化密码
[root@localhost bin]# cat /root/.mysql_secret
[root@localhost bin]# mysql -u root -p
Enter password: 这里输入初始化密码

如果不能登陆的话,请按下列操作
编辑my.cnf文件,在mysqld下面加入
skip-grant-tables # 跳过权限验证,不用验证就操作MYSQL

重启服务
[root@localhost ~]# service mysql restart
[root@localhost bin]# cd ~
[root@localhost ~]# mysql -u root
mysql> use mysql;
mysql> UPDATE user SET authentication_string = password ('root') WHERE User = 'root';
mysql> quit

再编辑编辑my.cnf文件
删除 skip-grant-tables

重启服务
[root@localhost ~]# service mysql restart
[root@localhost ~]# mysql -u root -p
Enter password: 输入修改的密码
mysql> show database;

这里,可能会报一个密码过于简单的错误
解决办法是再修改一次密码
mysql> alter user 'root'@'localhost' identified by 'root';
mysql> quit

校验密码的复杂程度
mysql> set global validate_password_policy=0;
密码的长度
mysql> set global validate_password_length=1;

添加远程访问权限
关闭selinux
[root@localhost ~]# vim /etc/sysconfig/selinux
SELINUX=enforcing 改为 SELINUX=disabled
Esc 完成编辑
:wq 保存退出

重启系统
[root@localhost ~]# reboot

关闭防火墙
临时关闭
[root@localhost ~]# systemctl stop firewalld
禁止开机启动
[root@localhost ~]# systemctl disable firewalld

配置所有计算机都有权访问数据库
mysql> update user set host = '%' where user='root';

你可能感兴趣的:(centos 7 安装 mysql5.7.25)