LinuxGod

LinuxGod.net
Linux大神网——精选每一篇高品质的技术干货
  1. 首页
  2. 开源快讯
  3. 正文

如何在CentOS上执行流行的MySQL数据库服务器的基本安装

2023年1月20日 143点热度

设置MySQL数据库

本文介绍如何在CentOS上执行流行的MySQL数据库服务器的基本安装。 MySQL是当今使用最广泛的数据库系统,它可以在许多不同的行业中找到,为动态网站和大型数据仓库等各种产品提供数据存储。

准备

此配方要求CentOS系统具有有效的网络连接和管理权限,使用root帐户或sudo。

怎么做

请按照以下步骤安装MySQL并创建新数据库:

curl -LO dev.mysql.com/get/mysql57-community-release-el7-
 7.noarch.rpm

yum install mysql57-community-release-el7-7.noarch.rpm

yum install mysql-community-server

systemctl start mysqld.service
systemctl enable mysqld.service

centos root密码修改_centos root默认密码_centos root密码忘记

firewall-cmd --zone=public --permanent --add-service=mysql
firewall-cmd --reload

grep "temporary password" /var/log/mysqld.log

mysqladmin -u root -p password

mysql -u root -p

CREATE DATABASE packt;

执行CREATE USER语句以创建用于处理数据库的MySQL用户帐户:

CREATE USER "tboronczyk"@"localhost" IDENTIFIED BY "P@$W0rd";

执行GRANT语句以为新数据库的帐户分配适当的权限:

GRANT CREATE, DROP, ALTER, LOCK TABLES, INDEX, INSERT, UPDATE, 
 SELECT, DELETE ON packt.* TO 
"tboronczyk"@"localhost";

FLUSH PRIVILEGES;

exit

工作原理

我们首先下载了在我们的系统上注册Oracle维护的MySQL存储库的软件包。 MySQL是从Oracle存储库安装的,因为CentOS存储库安装了MariaDB。 经过2008年至2010年的一系列收购,MySQL代码库和商标成为Oracle的财产。 对Oracle的管理和MySQL的未来的广泛关注促使MySQL的一个原始开发人员分叉项目并启动MariaDB。 2014年,Red Hat和CentOS存储库将MySQL替换为MariaDB的默认数据库(欢迎来到开源政治领域)。

注意

MariaDB的目标是在GNU GPL许可下保持一个免费的开源项目,并成为MySQL的“增强型,替代品”。目前,两者之间的差异对于临时用户来说可以忽略不计。但在分叉替换的世界中,主要是编程接口和通信协议保持兼容。核心功能最初可能保持不变,但随着时间的推移,新功能会独立添加,并且产品的功能集开始出现分歧。 MariaDB通过版本号的跳跃来承认这一点。 MariaDB 5.1提供与MySQL 5.1相同的功能linux服务器搭建,MariaDB 5.5 for MySQL 5.5也是如此。但是,MariaDB不打算实现MySQL 5.6的所有功能,并将其版本号更改为10.0。对于那些在家中保持分数的人来说,Oracle编写的存储库在撰写本文时主持了MySQL 5.7。 CentOS存储库目前提供MariaDB 5.5。

托管软件包的服务器假定人们使用Web浏览器下载文件并发出重定向以开始下载。由于我们使用curl,因此我们提供了-L参数来跟踪重定向以到达实际的包:

curl -LO dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm

接下来,我们安装了下载的包。 一旦注册了存储库,我们就可以使用mysql-community-server软件包安装MySQL。 该软件包安装服务器二进制文件,与MySQL一起使用的客户端实用程序作为依赖项安装:

yum install mysql57-community-release-el7-7.noarch.rpm
yum install mysql-community-server

MySQL维护自己的用户帐户,其管理用户名为root。 就像CentOS的root用户一样,您不应该将该帐户用于常规活动; 它应该保留用于管理任务,例如创建新用户,授予权限和刷新服务器的缓存。 其他权限较低的帐户应该用于日常活动。 为了保护root帐户,我们在第一次启动MySQL服务器时随机生成密码。 我们需要搜索MySQL记录密码的日志文件,以便我们可以设置我们自己选择的新密码:

grep "temporary password" /var/log/mysqld.log

知道了临时密码,我们用mysqladmin来改变它。 -u选项提供MySQL帐户的用户名linux是什么系统,-p提示我们输入帐户的密码,password是实用程序用于更改密码的子命令。 我们在提示输入原始密码时输入了临时密码,然后我们被要求输入并确认新密码:

mysqladmin -u root -p password

注意

root的随机默认密码是从MySQL 5.6开始的新行为,它将密码写入/root/.mysql_secret,而5.7将其写入日志文件。 在旧版本中,因此由CentOS存储库安装的MariaDB自5.5以来,密码为空。 validate_password插件也在MySQL 5.7中激活。 它要求密码为八个字符或更多,至少有一个数字,一个大写和一个小写字符,以及一个特殊字符(即标点符号)。 选择root的新密码时请考虑这些要求。

centos root密码忘记_centos root密码修改_centos root默认密码

设置root的永久密码需要临时密码

我们可以使用几个客户端连接到MySQL并与我们的数据库进行交互。 这个配方使用了mysql,因为它默认安装为依赖项。 同样,-u标识帐户的用户名,-p提示我们输入密码:

mysql -u root -p

在交互模式下运行时,客户端显示我们提交SQL语句的提示mysql>。 在每次查询之后centos root默认密码,客户端显示服务器的响应,语句执行的时间以及服务器是否报告任何错误或警告。

我们在提示符处发出了CREATE DATABASE语句,以创建名为packt的新数据库:

CREATE DATABASE packt;

然后我们使用CREATE USER创建了一个新的用户帐户,以避免在我们的日常工作中使用root。 该帐户名为tboronczyk,允许从localhost进行身份验证:

CREATE USER "tboronczyk"@"localhost" IDENTIFIED BY "P@$w0rd";

如果帐户将从其他系统连接到服务器,则系统的主机名或IP地址可以替换localhost。 MySQL将每个用户名和主机名对视为单独的帐户,例如tboronczyk @ localhost和tboronczyk @ 192.168.56.100是不同的帐户,可以分配不同的权限。

注意

您可以在主机名中使用通配符来创建可以从多个系统连接的帐户。 %通配符匹配零个或多个字符,因此可用于表示任何系统:

CREATE USER "tboronczyk"@"%" IDENTIFIED BY "P@$w0rd";

创建新帐户时没有任何权限,因此我们必须通过执行GRANT语句来分配它们:

GRANT CREATE, DROP, ALTER, LOCK TABLES, INSERT, UPDATE, SELECT, 
DELETE ON packt.* TO "tboronczyk"@"localhost";

该语句为packt数据库中的所有表(用*表示)分配以下权限:

完整的权限列表以及允许用户执行的操作可以在上的官方MySQL文档中找到。

接下来,我们指示MySQL使用FLUSH PRIVILEGES重建其权限缓存:

 FLUSH PRIVILEGES; 

当MySQL启动时,它会将用户和权限信息缓存在内存中(您将从第5章“管理文件系统和存储”中回忆起,从内存读取比从磁盘读取要快得多),然后每次用户执行时检查缓存验证他们是否具有足够权限的操作。每当我们创建或删除用户帐户或授予或撤销帐户的权限时,我们都需要告诉MySQL更新其缓存,否则我们的更改将在MySQL下次启动时被忽视。

当使用mysql连接到MySQL时,您可能经常使用其他选项调用它。常见选项是-hcentos root默认密码,如果MySQL在不同的系统上运行,它将标识远程服务器的主机名或IP地址。 -e直接执行语句,而不是以交互方式启动mysql。此外,要使用特定数据库,可以在命令的其余部分之后给出名称,也可以使用-D来指定它。以下示例通过连接到192.168.56.100上的MySQL服务器并对其sakila数据库执行SELECT语句来演示所有这些:

mysql -u tboronczyk -p -h 192.168.56.100 -D sakila -e "SELECT 
last_name, first_name FROM actor"

See also

Refer to the following resources for more information on working with MySQL:

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: centos mariadb mysql mysql创建数据库 数据库服务器
最后更新:2023年1月20日

Linux大神网

每日更新,欢迎收藏♥ 不积跬步无以至千里,加油,共勉。

点赞
< 上一篇
下一篇 >

Linux大神网

每日更新,欢迎收藏♥
不积跬步无以至千里,加油,共勉。

最新 热点 随机
最新 热点 随机
Linux默认的最大文件描述符数量是1024 关于LinuxQt安装教程及配置的回答及解决办法的 MySQL8.0的f配置文件是管理MySQL服务器的重要文件 局域网聊天软件简单介绍TOP1内网通传书 ARM嵌入式Linux系统开发详解.rar 一说unix/linux中对于文件操作的这几个函数 如何利用linux来开发属于自己的嵌入式Linux操作系统 腦/網絡>操作系統/系統-alternate-i386.iso(EXT)这几个版本有什么区别 精通unixshell脚本编程之文件描述符数ulimitulimit-n ubuntu离线安装软件 鸿蒙OS环境搭建过程中遇到的问题及解决方案 写入数据覆盖的分析与执行 解读Rainbond集群的安装和运维的原理,便于用户搭建Rainbond Linux基础知识:文件描述符、文件指针、索引节点 如何解决Linux下的无线网卡驱动的问题? linux 文件描述符 (师)-unused-fdKernel:2.6.14CPUarchitecture Linux系统下如何搭建SVN服务器,详细说明各配置项的功能 修改软件源文件、UI界面设置换源操作|Ubuntu Ubuntu14.04.2为例进行说明,其它Ubuntu版本与此类似 Linux图形界面用户和Windows用户来说获取系统硬件信息都不算问题 Ubuntu下换内核的过程及详细分析内核操作分析
ubuntu离线安装软件 鸿蒙OS环境搭建过程中遇到的问题及解决方案精通unixshell脚本编程之文件描述符数ulimitulimit-n腦/網絡>操作系統/系統-alternate-i386.iso(EXT)这几个版本有什么区别如何利用linux来开发属于自己的嵌入式Linux操作系统一说unix/linux中对于文件操作的这几个函数ARM嵌入式Linux系统开发详解.rar局域网聊天软件简单介绍TOP1内网通传书MySQL8.0的f配置文件是管理MySQL服务器的重要文件关于LinuxQt安装教程及配置的回答及解决办法的Linux默认的最大文件描述符数量是1024C语言教程-Qt.12安装教程05-27Linux有7个运行级别(关机,停机模式、DellG3)(Linux基础知识)文件压缩、打包命令解析的Linux操作系统怎样执行?LinuxDNS服务器,如何安装、配置和维护它?AMD2950x+技嘉x399免驱USB网卡,我的无线网卡linux解压gz文件命令 蓝易云香港五网CN2网络压缩比率的测试环境Linux系统中用于管理和控制系统服务的强大工具介绍围绕API创建封装器的开源项目正变得越来越流行主频93.75MHz的MIPS64NECVR4300处理器在N64上运行
知一能量linux查看系统信息命令是linux初学者必备的基础知识 Linux、apache、mysql、php合起来的简称本教程 Debian修复软件包依赖关系利用网络帮助用户主动获取软件包工具 Unix系统下的安装在Unix平台下安装PHP的方法 查看系统版本 linux “”的有关知识,不少人都会遇到这样的困境 如何入门嵌入式开发是什么?华妹告诉你! 如何在Linux上安装Diablo3操作系统Diablo3 轻松学会Linux创建用户设置密码,防止安全风险 Linux设备驱动程序的类型和文件操作的基本开发过程 轻松压缩文件,linux命令必备! 虚拟机linux系统下载 什么是linuxLinux(/托瓦兹)的Linux内核 零基础学习PHP看什么视频教程推荐PHP开发实战权威指南 linux如何用u盘安装系统教程?(linux) 轻松学习Linux Oracle实例创建,8个方面详解! linux修改权限 你知道哪个操作系统是世界上最受欢迎的操作系统吗? linux怎么安装输入法Linux系统可以通过以下步骤步骤安装 怎样在Linux中查找进程的PID和PPID什么是Linux进程ID DS-6400HD-T系列高清视音频 Linux系统中用于管理和控制系统服务的强大工具介绍 学习Linux最简单、最实用的环境就是虚拟机环境(上)
标签聚合
命令模式 操作 sudo 文件 linux服务器 linux系统 软件 虚拟机 文件目录 命令
书籍
课程
技术群
技术干货大合集↓
  • 2023年6月 / 26篇
  • 2023年5月 / 93篇
  • 2023年4月 / 90篇
  • 2023年3月 / 129篇
  • 2023年2月 / 84篇
  • 2023年1月 / 161篇
  • 2022年12月 / 187篇
  • 2022年11月 / 76篇
友情链接:

Linux书籍 | Linux命令 | Linux系统 | RHCE红帽认证 | Linux软件 | Linux教程 | CentOS系统 | Linux内核 | Linux服务器 | Linux大神 | IT资源

COPYRIGHT © 2023 linuxgod.net ALL RIGHTS RESERVED.