1、基本环境准备
操作系统:CentOS 7.4 内核版本3.10..0-693,可使用uname -a命令查看
Oracle JDK 1.8_171(建议使用Oracle JDK),可使用java -version命令查看
如有防火墙策略请放开3306端口,或者关闭防火墙策略
查看是否有自带MySQL,命令:
rpm -qa | grep -i mysql
如果有就删除,命令:
rpm -e --nodeps 查看到的选项
下载MySQL 5.7.19,到官网下载:https://downloads.mysql.com/archives/community/
如上图,如果你是CentOS 6的系统就选择el6版本(本例系统是7MySQL是el6的),下载完成之后上传到主机的/opt目录下(目录随意)
2、安装MySQL
给压缩包权限:
chmod 777 mysql-5.7.19-1.el6.x8664.rpm-bundle.tar # 使用非root用户可能有权限问题
解压:
tar -xvf mysql-5.7.19-1.el6.x8664.rpm-bundle.tar # 解压后得到的是一堆RPM包
安装RPM包:
rpm -ivh mysql-community-server-5.7.19-1.el6.x8664.rpm mysql-community-client-5.7.19-1.el6.x8664.rpm mysql-community-devel-5.7.19-1.el6.x8664.rpm mysql-community-libs-5.7.19-1.el6.x8664.rpm mysql-community-libs-compat-5.7.19-1.el6.x8664.rpm mysql-community-common-5.7.19-1.el6.x8664.rpm
如果执行有问题,执行命令:
rpm -ivh ./.rpm --nodeps --force # 安装文件夹下所有RPM并且不检查依赖
安装完毕后启动数据库
service mysqld start
查看数据库状态
service mysqld status
查看3306端口是否开启
netstat -anp | grep 3306
3、配置数据库
3.1、配置root密码
首次登录不知道密码 解决办法:
grep "password" /var/log/mysqld.log #查看临时密码
2018-04-18T14:16:58.026412Z 0 [Note] Shutting down plugin ‘sha256_password‘
2018-04-18T14:16:58.026415Z 0 [Note] Shutting down plugin ‘mysql_native_password‘
2018-04-18T14:22:52.728686Z 1 [Note] A temporary password is generated for [email protected]: 2h>o#oCyMszj
2018-04-18T14:22:56.773518Z 3 [Note] Access denied for user ‘UNKNOWN_MYSQL_USER‘@‘localhost‘ (using password: NO)
使用上面的临时密码登录MySQL(第三行最后冒号后面的:2h>o#oCyMszj),登陆
mysql -uroot -p # 回车键入临时密码
后执行下面语句更新root密码
mysql> SHOW VARIABLES LIKE ‘validate_password%‘; # 查看密码规则
mysql>
mysql> set password=password(‘新root密码‘); # 设置密码
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql>
mysql> update mysql.user set authentication_string=password(‘新root密码‘) where user=‘root‘ and Host = ‘localhost‘;
Query OK, 0 rows affected, 1 warning (0.00 sec)
Rows matched: 1 Changed: 0 Warnings: 1
mysql>
mysql> flush privileges; # 刷新权限
Query OK, 0 rows affected (0.00 sec)
mysql>
mysql> quit # 退出数据库
3.2、设置默认字符集为UTF-8
编辑文件:
vim /etc/my.cnf
在[mysqld]上面增加:
[client]
default-character-set=utf8
在[mysqld]下面增加:
character-set-server=utf8
collation-server=utf8_general_ci
重启数据库:
service mysqld restart
3.3、创建一个数据库和一个用户的例子
使用: mysql -uroot -p新密码 登陆
mysql> CREATE DATABASE 数据库名 CHARACTER SET utf8 COLLATE utf8_general_ci; # 创建数据库并指定编码集
mysql> CREATE USER ‘用户名‘ IDENTIFIED BY ‘密码‘; #创建用户
mysql> GRANT ALL ON 数据库名.* TO ‘用户名‘@‘%‘ IDENTIFIED BY ‘密码‘; # 给用户赋予数据库远程访问权限
mysql> GRANT ALL ON 数据库名.* TO ‘用户名‘@‘localhost‘ IDENTIFIED BY ‘密码‘; # 给用户赋予数据库本地访问权限
mysql> FLUSH PRIVILEGES; # 刷新权限
mysql> quit; # 退出数据库
root用户开启远程登录权限:
GRANT ALL PRIVILEGES ON *.* to ‘root‘@‘%‘ identified by ‘root密码‘;
root用户指定开启某台主机登录权限:
GRANT ALL PRIVILEGES ON *.* to ‘root‘@‘IP或者主机名‘ identified by ‘root密码‘;
原文地址:http://blog.51cto.com/13946719/2309261
时间: 2024-10-09 21:47:52