CentOS8安装MySQL

选择MySQL数据库的原因:

1、运行速度快;

2、开源免费;

3、易学易用;

4、可移植性,能够在众多不同的系统上工作;

5、丰富的接口,提供了用于C、C++等语言的API;

6、支持查询语言;

7、安全性和连接性,因为MySQL是网络化的,可以在因特网上的任何地方访问,提高数据共享效率;

8、历史悠久,社区用户活跃;

9、软件体积小,安装简单,易于维护。

复制代码
  MySQL 8.0 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能!MySQL 8 中值得关注的新特性和改进:

1、性能:MySQL 8.0 的速度要比 MySQL 5.7 快 2 倍。MySQL 8.0 在以下方面带来了更好的性能:读/写工作负载、IO 密集型工作负载、以及高竞争("hot spot"热点竞争问题)工作负载。

2、 NoSQL:MySQL 从 5.7 版本开始提供 NoSQL 存储功能,目前在 8.0 版本中这部分功能也得到了更大的改进。该项功能消除了对独立的 NoSQL 文档数据库的需求,而 MySQL 文档存储也为 schema-less 模式的 JSON 文档提供了多文档事务支持和完整的 ACID 合规性。

3、窗口函数(Window Functions):从 MySQL 8.0 开始,新增了一个叫窗口函数的概念,它可以用来实现若干新的查询方式。窗口函数与 SUM()、COUNT() 这种集合函数类似,但它不会将多行查询结果合并为一行,而是将结果放回多行当中。即窗口函数不需要 GROUP BY。

4、隐藏索引:在 MySQL 8.0 中,索引可以被"隐藏"和"显示"。当对索引进行隐藏时,它不会被查询优化器所使用。我们可以使用这个特性用于性能调试,例如我们先隐藏一个索引,然后观察其对数据库的影响。如果数据库性能有所下降,说明这个索引是有用的,然后将其"恢复显示"即可;如果数据库性能看不出变化,说明这个索引是多余的,可以考虑删掉。

5、降序索引:MySQL 8.0 为索引提供按降序方式进行排序的支持,在这种索引中的值也会按降序的方式进行排序。

6、 通用表表达式(Common Table Expressions CTE):在复杂的查询中使用嵌入式表时,使用 CTE 使得查询语句更清晰。

7、 UTF-8 编码:从 MySQL 8 开始,使用 utf8mb4 作为 MySQL 的默认字符集。

8、JSON:MySQL 8 大幅改进了对 JSON 的支持,添加了基于路径查询参数从 JSON 字段中抽取数据的 JSON_EXTRACT() 函数,以及用于将数据分别组合到 JSON 数组和对象中的 JSON_ARRAYAGG() 和 JSON_OBJECTAGG() 聚合函数。

9、 可靠性:InnoDB 现在支持表 DDL 的原子性,也就是 InnoDB 表上的 DDL 也可以实现事务完整性,要么失败回滚,要么成功提交,不至于出现 DDL 时部分成功的问题,此外还支持 crash-safe 特性,元数据存储在单个事务数据字典中。

10、高可用性(High Availability):InnoDB 集群为您的数据库提供集成的原生 HA 解决方案。

11、 安全性:对 OpenSSL 的改进、新的默认身份验证、SQL 角色、密码强度、授权。

一、准备工作:

1、下载对应版本的repo文件

wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo

2、清除旧的yum缓存并生成新的yum缓存

yum clean all

yum makecache

3、更新yum

yum update -y

二、安装mysql

1、安装命令:

wget http://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpm

rpm -ivh mysql80-community-release-el7-3.noarch.rpm

yum install mysql-server -y

service mysqld start

service mysqld status

systemctl enable mysqld.service

2、CCentOS8启动mysql服务:

3、CentOS8查看mysql服务是否启动:

三、查看当前安装的mysql版本

1、登录到mysql,如下图:

mysql -uroot -p

输入mysql的root用户密码

2、登录mysql后,查看当前安装的mysql版本,如上图:

select version();

四、开启mysql端口,配置mysql

1、CentOS8开启端口3306:

firewall-cmd --permanent --add-port=3306/tcp

2、重新加载防火墙,使开启的端口生效:

3、CCentOS8查看已开启的端口:

4、修改管理用户密码:

mysqladmin -uroot -p password

Enter password: #输入旧密码,默认空,回车

New password: #第一次输入新密码

Confirm new password: #第二次确认新密码

Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.

5、使用nvicat连接mysql数据库:

(1)安装windows版的nvicat软件,打开它设置如下:

Host:填安装mysql的服务器ip地址

port:mysql端口号默认3306

user name:mysql的默认用户

password:mysql的用户密码

(2)连接时,若报错如下:

(3)在windows PC端口查看CentOS服务器的3306端口是否可用:

说明MYsql端口已开启,not allowed说明服务器并未允许连接,

(4)回到CentOS服务器登录到MY SQL,输入MY SQL密码:

(5)使用show databases;查看已建立的数据库,如上图:

(6)打开mysql数据库

use mysql

(7)查看MY sql默认允许连接

select host from user where user = 'root';

可以看出,默认my sql只允许本地主机连接(即当前只允许CentOS8连接)

(8)修改配置,使my sql允许远程root用户连接

update user set host ='%' where user = 'root';

flush privileges;刷新权限列表,如上图:

(9)再次查看MY SQL允许连接的用户,有%出现,%代表了root用户,所以此时root用户的远程权限已更新

select host from user where user = 'root';

(10)再次使用Navicat连接MY SQL

6、再次使用windows客户端测试对CentOS服务器的MY SQL服务3306端口的测试


7、CentOS8查看CPU、内存、硬盘使用的情况

(1)CentOS查看CPU使用情况

top

(2)CentOS查看内存使用情况

free --h

(3)CentOS查看硬盘使用情况

df -h

本文至此结束,不足之处敬请批评指正。

相关推荐
XH-hui2 小时前
【打靶日记】TheHackerLabs 之 THLPWN
linux·网络安全·thehackerlabs·thl
不知更鸟4 小时前
Django 项目是什么
数据库·sqlite
有一个好名字7 小时前
MyBatis-Plus 三种数据库操作方式详解 + 常用方法大全
数据库·mybatis
-Xie-7 小时前
Redis(八)——多线程与单线程
java·数据库·redis
wanhengidc7 小时前
云手机的软件核心是什么
运维·服务器·web安全·游戏·智能手机
抛砖者7 小时前
1、Ubuntu上MySQL安装,密码设置,远程访问,端口修改
mysql·ubuntu
G探险者7 小时前
为什么 VARCHAR(1000) 存不了 1000 个汉字? —— 详解主流数据库“字段长度”的底层差异
数据库·后端·mysql
芬加达8 小时前
jvm八股
运维·服务器·jvm
小兔薯了8 小时前
11. Linux firewall 防火墙管理
linux·运维·服务器
gcygeeker8 小时前
安卓 4.4.2 电视盒子 ADB 设置应用开机自启动
android·adb·电视盒子