[从零开始搭网站七]CentOS上安装Mysql
点击下面连接查看从零开始搭网站全系列
通过前面6章,我们买好了服务器,配置了服务器连接,服务器上配置了JDK和Tomcat,准备了域名(这个我没教,自己去阿里/百度/腾讯买,买东西我相信大家都是会的),并为域名配上了免费的SSL证书,那么就差最后一步,就能准备开始写项目了,那就是本章的内容----配置Mysql数据库.(至于RabbitMQ啊,Radis啊等等,一方面不是从零开始搭网站到目前为止必须的,前面这些没有是不行的,另一方面是我现在还不会...先一步一步来,要用到了我学学再放教程)
经过前几章的演示,我就默认大家都初步会使用CentOS下最基本的命令号操作了啊,最起码知道怎么复制我的代码放到服务器上跑,所以,我就不再截图了.(主要是博客园mac这有bug,我截图必须得保存到本地,然后再上传,我要是截图直接粘贴在这里,windows下没问题,mac下发布以后打不开,累死了)
因为Mysql被Oracle公司收购后,Linux开源社区的人担心Mysql有必源风险,所以现在Msql不在Linux的默认yum安装集合里了.但是也有办法,按照我下面这个来就行.
1.获取Mysql Yum Repository
在终端输入:
wget -i https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
如果想安装最新版本,请自行去 https://dev.mysql.com/downloads/repo/yum/ 获取最新的下载地址,记得下面安装的语句版本也要改
2.安装 Yum Repository,输入:
yum -y install mysql57-community-release-el7-.noarch.rpm
3.安装Mysql服务器版本
yum -y install mysql-community-server
4.行了,安装完了,用yum方式安装就三步,贼简单.但是别急,现在只是开始....
启动数据库
systemctl start mysqld.service
5.获取安装时,Mysql给你附送的随机密码
grep "password" /var/log/mysqld.log
这个随机密码这个要记下来记下来,很重要...一会要考,我的是 ?%k5?FyIf5M*
6.一般的教程,这里该叫你修改密码了,我这里当然也是一个一般的教程,所以下一步,先登录
mysql -uroot -p
然后让你输入密码,就是第五步送的密码,你复制你的,粘贴进去,直接回车就行了.不用担心没输上,CentOS里面输密码(大多)都不显示的.
7.修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '你自己想输啥密码输啥密码';
当你信心满满准备按回车修改你的密码的时候,你会发现Mysql无情的阻止了你,并且提示了一行信息:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
一般的教程到这里就没有了.为啥呢,因为一般的教程,一般时间也都比较早,当时Mysql对你密码没啥限制,你用0000都可以作为密码,现在(大概是5.7以后)Mysql就很过分了,密码必须包含大小写,特殊字符,长度超过12位.所以要么你就用你第五步生成的密码,要么你自己起一个能记住的符合要求的密码,要么你往下看,取消这个限制(当然,这样做安全性上肯定不如原生的强,但是嘛...................不安全就不安全吧...我得能记住...)
8.设置密码强度最低,即可以为纯数字,纯密码
set global validate_password_policy=;
9.设置密码长度为最短(这里最短也只能为4位,你设1.2.3也都没用)
set global validate_password_length=;
10.再次修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '你自己想输啥密码输啥密码';
这次就可以成功了,不用谢.别急,没完.
11.还是5.7版本以后,为了安全起见,不仅仅你的密码复杂度,密码长度有了硬性要求,你的密码有效期还有了限制(心好累.jpg),那么我们就继续设置密码为永不过期
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
想获得更多信息(比如说要是上面哪些语句又不能用了或者密码又又又哪里不能用了...),来参考这里: https://dev.mysql.com/doc/refman/5.7/en/password-expiration-policy.html
12.你以为现在结束了么...其实还没有,你现在远程你这个服务器地址+3306端口连接你的Mysql,你会发现...还是无法连上,因为现在Mysql默认的是只有本机可以访问数据库...那么我们现在要开放所有的IP都可以访问
这一步实际上是在给连接到Mysql的用户授权,用户名就是下面这个@前的root,密码就是by后面填的密码,将来远程的时候,用户名就是root,密码就是后面自己写的密码.我是怕忘,和第十步是一样的.
grant all privileges on *.* to root@'%' identified by '同第十步,你自己想输啥密码输啥密码';
执行这一步,有可能还会出现眼熟的第七步出现的提示(如果你密码设的简单的话):
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
那么我们再把8,9再执行一遍,再执行上一句代码就行.
13.保存修改
flush privileges;
14.经历了这么多步,踩平了这么多坑,你以为到这里结束了么?是的,这次是真的结束了...起码我这里经过这一系列的配置,已经完全把开发环境配置好了,准备正式开始开发项目了.下章再见.
[从零开始搭网站七]CentOS上安装Mysql的更多相关文章
- [从零开始搭网站三]CentOS配置JDK
点击下面连接查看从零开始搭网站全系列 从零开始搭网站 上一章我介绍了,如何不用每次都输密码连接服务器.那么这一章终于要开始服务器的开发环境配置了. 1:先输入以下代码来检验有没有已经安装的CDK: r ...
- [从零开始搭网站四]CentOS配置Tomcat
点击下面连接查看从零开始搭网站全系列 从零开始搭网站 上一章带大家配置了JDK,那么现在就要来配置Tomcat容器了. 1:去 http://tomcat.apache.org/download-90 ...
- 在centos上安装mysql
本文依然是用的xftp上传gz文件,然后在xShell上操作的,如果没有安装使用这两个文件的请查阅之前的博客. 1.将下载好的文件用xftp上传到对应的位置. 2.解压文件:tar -zvxf m ...
- Linux CentOS上安装 MySQL 8.0.16
前言: 因为我需要在我新安装的Linux CentOS系统服务器中安装和配置MySQL服务器,然而对于我们这种Linux使用小白而言在Linux系统中下载,解压,配置MySQL等一系列的操作还是有些耗 ...
- Linux1 在Linux(CentOS)上安装MySql详细记录
前记: 毕业两年了,前两天换了份工作,由以前的传统行业跳到了互联网行业.之前的公司一直在用WinServer2003+Tomcat+SqlServer/Oracle这套部署环境.对于Linux+To ...
- [Linux] 使用Yum在CentOS上安装MySQL
跟随官网上的安装教程:https://dev.mysql.com/doc/refman/8.0/en/linux-installation-yum-repo.html官网上还有一个QuickGuide ...
- 使用yum方式在centOS上安装mysql
1.操作系统及MySQL版本 1.1 操作系统版本 CentOS release 6.5 (Final) 1.2 MySQL版本 mysql-5.1.73-3.el6_5.x86_64mysql-li ...
- [从零开始搭网站八]CentOS使用yum安装Redis的方法
1.由于centOS官方yum源里面没有Redis,这里我们需要安装一个第三方的yum源,这里用了fedora的epel仓库 yum install epel-release 安装过程中会有让你确认的 ...
- CentOS上安装MySQL
1.准备RPM安装包 MySQL-server-5.6.33-1.linux_glibc2.5.x86_64 MySQL-client-5.6.33-1.linux_glibc2.5.x86_64 2 ...
随机推荐
- ORM for Net主流框架汇总
ORM框架:Object/Relation Mapping(对象/关系 映射)的缩写,易于理解的模型化数据的方法.简单的说就是把数据库的关系型数据类型转换为用对象型程序控制的框架类型. 框架优缺点分析 ...
- 前端框架VUE----面向对象
JavaScript 语言中,生成实例对象的传统方法是通过构造函数. function Animal(name,age){ this.name = name; this.age = age; } An ...
- Oracle12.2中新增的分区功能
Oracle 12.2已经发布一段时间,公网上也可以下载试用.针对12.2,partitioning(分区)也有了不少增强. 自动列表分区 多字段列表分区 只读分区 分区维护时允许过滤 在线转换非分区 ...
- 原生态JDBC
原生态JDBC JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API.JDBC是java访问数据库的标准规范,可以为不同的关系 ...
- Docker学习笔记之保存和共享镜像
0x00 概述 让 Docker 引以为傲的是它能够实现相比于其他虚拟化软件更快的环境迁移和部署,在这件事情上,轻量级的容器和镜像结构的设计无疑发挥了巨大的作用.通过将容器打包成镜像,再利用体积远小于 ...
- Spring Boot 2 (六):使用 Docker 部署 Spring Boot 开源软件云收藏
Spring Boot 2 (六):使用 Docker 部署 Spring Boot 开源软件云收藏 云收藏项目已经开源3年多了,作为当初刚开始学习 Spring Boot 的练手项目,使用了很多当时 ...
- 11: python中的轻量级定时任务调度库:schedule
1.1 schedule 基本使用 1.schedule 介绍 1. 提到定时任务调度的时候,相信很多人会想到芹菜celery,要么就写个脚本塞到crontab中. 2. 不过,一个小的定时脚本,要用 ...
- UML建模类图【2】--☆☆
虚线箭头指向依赖: 实线箭头指向关联: 虚线三角指向接口: 实线三角指向父类: 空心菱形能分离而独立存在,是聚合: 实心菱形精密关联不可分,是组合: 上面是UML的语法. 在画类图的时候,理清类和类之 ...
- Codeforces 822D My pretty girl Noora - 线性筛 - 动态规划
In Pavlopolis University where Noora studies it was decided to hold beauty contest "Miss Pavlop ...
- python ---24 正则表达式 re模块
一.正则表达式 1.字符组 ① [abc] 匹配a或b或c ② [a-z] 匹配a到z之间的所有字⺟ [0-9]匹配所有阿拉伯数字 2.元字符 3.量词 4.重要搭配 ① .*? ② .*?x ...