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

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

2023年1月20日 45点热度

设置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系统用户系统上的三种类型的帐户的介绍 Linux下的开机启动设置方法是什么?脚本或服务 谷歌更新Linux内核构建的公共内核库:添加对kokoro作业的支持 linux下mysql中可以使用REVOKE语句来删除某个用户的权限 内核的角度来看,调用hotplug和通常的hotplug环境 Linux系统在开机的时候自动加载某些脚本或系统服务 如何在Linux上安装Diablo3操作系统Diablo3 RedHatLinux软件安装包软件后缀为.rpm最初 1.1.4Linux的内核版本和发行版本是什么意思?(图) Linux系统的安装-Ubuntu开启虚拟机安装过程默认注意事项 hello_exit函数代码存放在__init段中(一) 英伟达将LinuxGPU内核模块作为开放源码/MIT双重许可证(图) virtualboxlinux官方版免费、小巧,同时支持Windows、Linux和Mac系统主机 Linux平台下的嵌入式软件要具备说明技能吗? 图解linuxlinux内核结构框图对内核框图有个总体的把握 linux虚拟机的安装步骤是什么?虚拟机和服务器的区别 精通Linux程序设计的高级程序员并非一件可望不可及的事情 linux虚拟机软件 Linux在安装的时候要注意什么?Linux安装注意事项 Python都有哪些应用,学习完成Python后能的工作方向 微软考虑用Rust开发内核的Linux内核-Hartman
Linux5.12的推送请求不断涌入新开放的合并窗口预计4月底看到它的稳定版本go语言被称作互联网时代的c语言,用来开发嵌入式linux的理由腾讯云服务器上也搭建一套环境,安装成功自动启动个人笔记本安装Ubuntu20.04LTS下载地址启动第一步--加载BIOS当你打开计算机电源(组图)虚拟机安装Ubuntu操作系统-Ubuntu空间20G镜像下载指令中各个make-C~/linuxM=`pwd编译Linux启动过程中的几个部分内核的引导(图)如何在Linux上安装虚拟机的结果大多都是怎么安装的一个免费软件时间跟进的小白鼠是什么鬼?专题计算机是如何启动的?、内核操作系统的启动流程学习Linux最简单、最实用的环境就是虚拟机环境(上)基于命令修改文件的权限命令-ld1.Linux磁盘分区和目录Linux发行版本之间的差别很少?国内性价比很高的Linux虚拟主机系统安装的流程是什么?Linux下修改文件权限的权限与所有权的实现就显得很有必要linux到底难不难学呢?推荐可以查看Linux命令大全Linux中修改文件权限的命令、创建者所在组、所有人Linux的内核放在了哪里?/boot的启动目录一览阿里云>社区>主题地图S>查看存储推荐
Linux游戏起源于最受欢迎的游戏平台:SteamOS介绍 Python源代码编译安装.依赖环境安装.安装教程 u盘无密码移动版livepersistencepersistence制作u盘有密码 小白在阿里云云服务器上如何发布自己的网站(建站|详细) 聊聊我们建站主机选择Windows还是Linux系统的问题(图) Linux内核启动注册中断内核中断源如何实现多个定时器 Linux云主机无法SSH远程登录,上午还用得挺好 2022年3月7日Linux中提权漏洞被安全研究员爆出 linux系统怎么在文件夹里搜索文件?方法总结及方法 统信UOS为啥火?国产操作系统又该如何发展?(组图) Linux下修改文件权限的权限与所有权的实现就显得很有必要 php入门到就业线上直播课:linux同步时间的设置 linux基础命令注意:Linux命令区分大小写,小心输入内容 想要在安卓手机上体验Linux操作系统在直接途径上并不可能 阿里云轻量级应用服务器配置远程服务器配置 kali渗透测试系列文章目录信息收集信息网站的常见漏洞 渗透测试最重要的阶段之一DNS枚举工具 如何在Linux上安装Diablo3操作系统Diablo3 【好玩的网络-第2.5期】分配IP有哪些骚操作?小白保姆级教程 基于linux搭建一个,记录一下关键的坑怎么处理?
标签聚合
linux系统 linux服务器 虚拟机 sudo 软件 电脑 shell unix 命令模式 文件目录
书籍
课程
技术群
技术干货大合集↓
  • 2023年2月 / 12篇
  • 2023年1月 / 161篇
  • 2022年12月 / 187篇
  • 2022年11月 / 76篇

COPYRIGHT © 2023 linuxgod.net ALL RIGHTS RESERVED.