一 mysql 安装
[root@rh8 ~]# yum module install mysql # 下载mysql
[root@rh8 ~]# systemctl enable --now mysqld # 启动MySQL服务
注:说明安装MySQL 8.0成功了。
[root@rh8 ~]# mysql_secure_installation # 安全性相关的操作
输入用户root的密码:
验证密码组件可用于测试密码提高安全性。它检查密码的强度只允许用户设置足够安全。是否要设置验证密码组件?
按y | y表示是,按任何其他键表示否:y
密码验证策略有三个级别:
低 长度>=8
中等 长度>=8,数字、混合大小写和特殊字符
强 长度>=8,数字,混合大小写,特殊字符和字典文件
请输入0=低,1=中,2=强:0
对根用户使用现有密码。密码的估计强度:0
更改root用户的密码?(y为y,其它按y键)
... 跳过。
默认情况下,MySQL安装有一个匿名用户,允许任何人登录MySQL而不必为他们创建的用户帐户。这只是为了
测试,并使安装变得更加顺利。您应该在进入生产之前删除它们环境。
删除匿名用户?(按y | y表示是,按任何其他键表示否):n
... 跳过。
通常,只允许根用户从“本地主机”。这确保了有人不能猜到来自网络的根密码。
不允许远程根用户登录?(按y | y表示是,按任何其他键表示否):n
... 跳过。
默认情况下,MySQL附带一个名为“test”的数据库
任何人都可以访问。这也仅用于测试,在投入生产前应将其移除环境。
删除测试数据库并访问它?(按y | y表示是,按任何其他键表示否):n
... 跳过。
重新加载特权表将确保所有更改到目前为止,将立即生效。
现在重新加载特权表?(按y | y表示是,按任何其他键表示否):y
成功。
全部完成!
MySQL 8.0 调整密码验证规则:
mysql> set global validate_password.policy=0;
mysql> set global validate_password.length=1;
重新设置密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
远程连接的方法 Mysql默认不允许远程登录,所以需要开启远程访问权限
mysql> use mysql;
mysql> select user,authentication_string,host from user;
mysql> update user set host = '%' where user = 'root';
mysql> FLUSH PRIVILEGES;
开启防火墙
[root@rh8 ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
[root@rh8 ~]# firewall-cmd --reload
二 连接和断开服务器
[root@rh8 ~]# mysql -hlocalhost -uroot -p
Enter password:
欢迎使用MySQL进行监控。命令以;或\g结尾。你的MySQL连接id是23 服务器版本:8.0.21源代码分发
键入“help;”或“\h”以获取帮助。键入'\c'清除当前输入语句。
mysql>
quit OR exit OR \q 都可以断开服务
如果,当您尝试登录时,会收到错误消息,例如 ERROR 2002(HY000):无法通过套接字'/tmp/mysql.sock'(2)连接到本地MySQL服务器 ,这意味着MySQL服务器守护程序(Unix)或服务(Windows)未运行,运行下即可 systemctl enable --now mysqld 。
三 MySQL程序概述
每个MySQL程序都有许多不同的选项。 大多数程序提供了一个 --help 选项
MySQL服务器 :
mysqld: SQL守护程序(即MySQL服务器)。 要使用客户端程序, 必须运行 mysqld ,因为客户端通过连接到服务器来访问数据库。 请参见 第4.3.1节“ mysqld - MySQL服务器” 。
mysqld_safe:服务器启动脚本。 mysqld_safe 尝试启动 mysqld 。 请参见 第4.3.2节“ mysqld_safe - MySQL服务器启动脚本” 。
mysql.server:服务器启动脚本。 此脚本用于使用System V样式运行目录的系统,该目录包含为特定运行级别启动系统服务的脚本。 它调用 mysqld_safe 来启动MySQL服务器。 请参见 第4.3.3节“ mysql.server - MySQL服务器启动脚本” 。
mysqld_multi:服务器启动脚本,可以启动或停止系统上安装的多个服务器。 请参见 第4.3.4节“ mysqld_multi - 管理多个MySQL服务器” 。
连接MySQL服务器的MySQL客户端程序:
MySQL: 用于以批处理方式交互式输入SQL语句或从文件执行它们的命令行工具。 请参见 第4.5.1节“ mysql - MySQL命令行客户端” 。
mysqladmin: 执行管理操作的客户端,例如创建或删除数据库,重新加载授权表,将表刷新到磁盘以及重新打开日志文件。 mysqladmin 还可用于从服务器检索版本,进程和状态信息。 请参见 第4.5.2节“ mysqladmin - 管理MySQL服务器的客户端” 。
mysqlcheck: 表维护客户端,用于检查,修复,分析和优化表。 请参见 第4.5.3节“ mysqlcheck - 表维护程序” 。
mysqldump: 将MySQL数据库作为SQL,文本或XML转储到文件中的客户端。 请参见 第4.5.4节“ mysqldump - 数据库备份程序” 。
mysqlimport:使用的导出文本文件到其各自表的客户端 LOAD DATA 。 请参见 第4.5.5节“ mysqlimport - 数据导入程序” 。
mysqlpump: 将MySQL数据库作为SQL转储到文件中的客户端。 请参见 第4.5.6节“ mysqlpump - 数据库备份程序” 。
mysqlsh: MySQL Shell是MySQL Server的高级客户端和代码编辑器。 除了提供的SQL功能,类似于 mysql ,MySQL Shell还提供了JavaScript和Python的脚本功能,并包含用于MySQL的API。