![](https://img-blog.csdnimg.cn/43aebc53f7044cbbb657dc48c456be61.jpeg)
MySQL:Ubuntu系统本地安装MySQL数据库及其基本使用方法(一)
✨ 注意:如下图所示,本文使用MySQL版本为8.0.30,操作系统使用的是Ubuntu22.04。对于数据库的基础应用,其他版本与操作系统安装与使用完全也参考本文的安装与使用方法。
![](https://img-blog.csdnimg.cn/d4766adc9d57439a8870431e1356a87f.png)
一、MySQL的安装及相关概念简介
1.1 MySQL的安装
在终端输入如下一条指令,即可下载安装MySQL:
sudo apt install mysql-server
询问希望继续安装的时候输入y
,然后等待出现如下图所示的内容即表示安装成功:
![](https://img-blog.csdnimg.cn/1e6d7826be10493db93f54bbcb9d1339.png)
执行完上面的指令后,我们就在Ubuntu系统本地安装了一个MySQL数据库服务器了。
1.2 MySQL数据库的几个重要概念
- 1、数据库服务器的概念
如下图所示,MySQL遵循客户端-服务器架构的工作模式,该模型是客户端的终端用户设计的,以使用网络服务从中央服务器访问资源。
![](https://img-blog.csdnimg.cn/1c2832a7f774404fb925c95f3855f39d.png)
MySQL数据库的核心是MySQL服务器,该服务器可以作为单独的程序使用,负责处理所有数据库指令、语句与命令。
- 2、数据库的概念
数据库是用于有组织的形式存储记录的集合,其允许我们将数据保存到表、行、列与索引中,以便经常查找相关信息。MySQL将数据库实现以表的形式存储所有文件的目录,我们可以很容易地通过数据库访问与管理记录。
- 3、用户的概念
在安装了MySQL服务器后,它本身默认创建了一个
root
用户,其仅用于访问与管理数据库。但是有的时候需要有针对性地授予他人管理权限时,此时就需要创建非root
用户并授予他们特定数据库操作功能的权限。
MySQL用户是MySQL服务器的USER
表中的一条记录,包含MySQL账户的登陆信息、权限以及主机信息。对于使用者,必须在MySQL中创建一个用户来访问与管理数据库。 当我们创建了一个用户后,MySQL服务器就为新建的用户提供了如下功能:
- 身份验证
- SSL/TLS
- 资源限制
- 角色、密码管理属性
二、MySQL的基本使用
2.1 MySQL数据库的登陆与退出
在1.1中本地安装好MySQL后,系统会自动配置好登陆密码,本地登陆MySQL可以在不输入密码的情况下完成。
首先登陆MySQL数据库,命令如下所示:
sudo mysql
退出MySQL数据库的命令为exit
。
2.2 数据库基本操作
在MySQL服务器上数据库的基本操作主要包括:
(1) 数据库的显示
(2) 数据库的创建 / 删除
(3) 选择数据库
- 1、数据库的显示
登陆MySQL数据库后,可以输入如下命令查看MySQL中已经安装好的数据库:
show databases; # 查看MySQL中已经创建好的数据库
输出如下图所示,MySQL中已经有了四个数据库。
![](https://img-blog.csdnimg.cn/0c7d42b308614c0e9a5e1a37375c3662.png)
查看当前运行数据库的指令为:
select database(); # 查看当前运行的数据库
当我们登陆MySQL后,是没有运行任何数据库的,此时代码的执行结果如下图所示,显示当前运行的数据库为NULL
:
![](https://img-blog.csdnimg.cn/974c43f4eb904228846ca1676cb2fa7e.png)
- 2、数据库的创建 / 删除
但是,如果我们想创建一个针对特定任务的自定义数据库securities_master
,可以通过下面指令创建:
create database securities_master; # 创建自定义名称为securities_master的数据库
此时如下图所示,使用show databases;
命令就可以发现MySQL中已经创建好securities_master
数据库了:
![](https://img-blog.csdnimg.cn/44ce9e4779434ce7a653b3fd2c4e38c3.png)
我们还可以通过下面命令删除securities_master
数据库:
select user from mysql.user; # 删除securities_master的数据库
- 3、数据库的选择
数据库之间的切换命令为use 数据库名
,比如下面切换到上面创建的securities_master
数据库的命令为:
use securities_master # 切换到securities_master数据库
代码执行结果如下图所示:
![](https://img-blog.csdnimg.cn/054eb88477f24f3880c8d425077015fa.png)
此时就切换到securities_master
数据库了,使用select database();
命令可以查看当前运行的数据库为securities_master
:
![](https://img-blog.csdnimg.cn/38d151e328604ae98f73c433b4cd1657.png)
2.3 用户的基本操作
在MySQL服务器上用户的基本操作主要包括:
(1) 用户的显示
(2) 用户的创建 / 删除
- 1、用户的显示
显示当前登陆用户的命令如下所示:
select user(); # 显示当前用户
查看数据库服务器中所有用户的列表的命令如下所示:
select user from mysql.user; # 显示数据库服务器中所有用户列表
代码执行结果如下面左图所示,在Ubuntu系统中安装MySQL时候,系统默认创建了四个用户:
![](https://img-blog.csdnimg.cn/b7cecdfdb261489e887a4100d03e1bfc.png)
![](https://img-blog.csdnimg.cn/4bb9bb18dcf747e6831a06fe7682ee34.png)
-
2、用户的创建 / 授权 / 删除
-
用户的创建:
创建用户的命令如下所示:
# 创建一个名称为sec_user的新用户
create user 'sec_user'@'localhost' identified by 'password';
其中,sec_user
为新创建的用户名;localhost
为主机名;此时,使用select user from mysql.user;
查看系统中的所有用户,如上面左图此时就有了sec_user
用户了。
- 用户的授权:
创建用户会创建一个具有完全访问权限的新用户。所以,如果你想给用户权限,就需要使用 grant
授权语句。
如下表所示,MySQL服务器为新用户提供了多种类型的权限:
权限名称 | 描述 |
---|---|
ALL PRIVILEGES |
允许新用户的所有权限 |
CREATE |
允许用户能够创建数据库和表 |
DROP |
允许用户能够删除数据库和表 |
DELETE |
允许用户能够从特定表中删除行 |
INSERT |
允许用户能够将行插入到特定的表中 |
SELECT |
允许用户能够读取数据库 |
UPDATE |
允许用户能够更新表行 |
下面代码将所有权限赋予上面创建的sec_user
用户:
# 将所有权限赋予上面创建的`sec_user`用户
grant all privileges on securities_master.* to 'sec_user'@'localhost';
刷新权限设置,使其立即生效:
flush privileges;
使用下面的指令可以查看sec_user
用户的权限状态:
show grants for sec_user@localhost;
执行结果如下图所示:
![](https://img-blog.csdnimg.cn/8a0de2ec9d26463d8a2db1aab9c1aa82.png)
- 用户的删除操作:
删除上面创建的sec_user
的命令如下所示:
drop user 'sec_user'@'localhost' # 删除sec_user用户的命令