linux高级管理——访问MYSQL数据库

一、认识数据库系统:

 MySQL数据库系统也是一个典型的C/S(客户端/服务器)架构的应用,要访问MySQL数据库需要使用专门的客户端软件。在Linux系统中,最简单、易用的MySQL客户端软件是其自带的mysql命令工具。

1.登录到MySQL服务器
经过安装后的初始化过程,MySQL 数据库的默认管理员用户名为 root,密码为空。若要以未设置密码的root用户登录本机的MySQL数据库.可以执行以下操作。

[root@xiao ~]# mysql -u root

在有密码的情况下.还应使用“一p”选项来进行密码校验。

[root@xiao ~]# mysql -u root -p

执行“STATUS,”语句可以查看当前数据库服务的基本信息。

mysql> status;

在“mysql>”操作环境中,执行“EXIT”或“QUIT”命令可以退出mysql 命令工具.返回原来的Shell环境。

二、使用MySQL数据库:

2.1 查看数据库结构:

 MySQL是--套数据库管理系统,在每台MySQL服务器中,均支持运行多个库.每个库相当于-个容器,其中存放着许多表,这些信息称为数据记录。

查看当前服务器中有哪些库

mysql> show databases;

查看当前使用的库中有哪些表

mysql> use mysql;       ##进入库##
Database changed
mysql> show tables;     ##查看表##

 MySQL数据库的数据文件存放在/usr / local/mysql /data目录下,每个数据库对应一-个子目录.用于存储数据表文件。每个数据表对应为三个文件.扩展名分别为“. frm". ".myd”和".rmyi".

查看表的结构
DESCRIBE语句:用于显示表的结构.即组成表的各字段(列)的信息。需要指定“库名.表名”作为参数,若只指定表名参数.则需先通过USE语句切换到目标库。例如.执行以下操作可以查看mysql库中的user 表的结构.与直接执行“DESCRIBE mysql , user;”语句的效果相同。

mysql> describe user;

三、创建及删除库和表: 

1.创建新的库
CREATE DATABASE 语句:用于创建一个新的库.需指定数据库名称作为参数。

mysql> create database bdqn;

2.创建新的表
CREATE TABLE语句:用于在当前库中创建新的表.需指定数据表名称作为参数,并定义该表格所使用的各字段。

mysql> create table stuinfo (姓名 nvarchar(20) not null,性别 nvarchar(1) not null,年龄 int not null,联系电话 varchar(11) not null,Emall地址 nvarchar(30) not null);

 3.删除一个数据表
DROP TABLE语句:用于删除库中的表.需要指定“库名.表名”作为参数;若只指定表名参数,则需先通过执行“USE”语句切换到目标库。

mysql> DROP TABLE auth.users ;   ##删除auth 库中的users表##

4.删除一个数据库
DROP DATABASE 语句:用于删除指定的库.需要指定库名作为参数。例如,执行以下操作可以删除名为auth的库。

mysql> DROP DATABASE auth ;

四、管理表中的数据记录: 

1.插入数据记录
NSERT NTO语句:用于向表中插入新的数据记录。

mysql> insert into stuinfo (姓名,性别,年龄,联系电话,Emall地址) values ('张无忌','男',19,17512345678,'wuiji.zhang');


2.查询数据记录
SELECT 语句:用于从指定的表中查找符合条件的数据记录。MySQL数据库支持标准的SQL查询语句,语句格式如下所示。

mysql> select * from stuinfo;

3.修改数据记录
UPDATE语句:用于修改.更新表中的数据记录.

UPDATE 表名 SET 字段名1=字段值1[,字段名2=字段值2] WHERE 条件表达式mysql> update mysql .user set password=password('123457') where usre='root'

4.删除数据记录
DELETE语句:用于删除表中指定的数据记录。

DElETE FROM 表名 WHERE 条件表达式mysql> select user,host,password from mysql.user where user='';

五、数据库用户权限分配: 

1、授予权限
GRANT语句:专门用来设置数据库用户的访问权限。当指定的用户名不存在时,GRANT语句将会创建新的用户,否则,GRANT语句用于修改用户信息。语句格式如下所示。

GRANT 权限列表 ON 库名.表名 to 用户名@来源地址〔iDENTiFTED BY‘密码’]

权限列表:用于列出授权使用的各种数据库操作,以逗号进行分隔,如"select , insert , update”。使用“all”表示所有权限,可授权执行任何操作。

库名.表名:用于指定授权操作的库和表的名称.其中可以使用通配符“*”。例如,使用“auth ,*”表示授权操作的对象为auth库中的所有表。

用户名@来源地址:用于指定用户名称和允许访问的客户机地址,即谁能连接.能从哪里连接。来源地址可以是域名.P地址,还可以使用“%”通配符.表示某个区域或网段内的所有地址,如“%.bdqn , com”“192,168.1 .%”等。

IDENTIFIED BY:用于设置用户连接数据库时所使用的密码字符串。在新建用户时,若省略“IDENTIFIED BY”部分,则用户的密码将为空。

2.查看权限
SHOW GRANTS语句:专门用来查看数据库用户的授权信息.通过FOR子句可指定查看的用户

SHOw GRANTS FOR用户名@来源地址

3.撤销权限
REVOKE语句:用于撤销指定用户的数据库权限,撤销权限后的用户仍然可以连接到MySQL服务器,但将被禁止执行对应的数据库操作。语句格式如下所示。

REVOKE 权限列表 ON 数据库名.表名 FROM 用户名@来源地址

六、实验:(MySQL服务器的构建与维护

实验需求:

为MySOL 数据库的root用户设置密码.朋除用户名.密码为空的用户记录。

mysql> update mysql .user set password=password('123457') where usre='root'mysql> select user,host,password from mysql.user where user='';

新建名为“bdqn”的库.授权用户rundb 从本机访问.具有所有操作权限。

mysql> grant all on aut.* to 'rundd'@'localhost' identified by '123456';
##创建用户rundd##mysql> create database bdqn;

以rundb用户登录,在bdqn库中创建stuinfo表,并录入数据,如表3-2所示。

mysql> insert into stuinfo (姓名,性别,年龄,联系电话,Emall地址) values ('张无忌','男',19,17512345678,'wuiji.zhang');
mysql> insert into stuinfo (姓名,性别,年龄,联系电话,Emall地址) values ('白居易','男',24,17587654321,'jujyi.bai@tangchao.org');
mysql> insert into stuinfo (姓名,性别,年龄,联系电话,Emall地址) values ('蓝采和','女',21,59420131466,'caiihe.lan@haoxihuannia.org');


 





 



 


 


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/219172.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何想成为嵌入式工程师?(这些东西您必须知道)

嵌入式的发展怎么样? 嵌入式系统领域一直在迅速发展,伴随着物联网、智能设备、汽车电子、医疗设备等应用的不断增加,对嵌入式技术的需求也在不断扩大。因此,嵌入式领域仍然是一个充满机会的领域,为专业人士提供…

〖大前端 - 基础入门三大核心之JS篇(53)〗- 构造函数与类

说明:该文属于 大前端全栈架构白宝书专栏,目前阶段免费,如需要项目实战或者是体系化资源,文末名片加V!作者:哈哥撩编程,十余年工作经验, 从事过全栈研发、产品经理等工作,目前在公司…

VMware安装ContOS 7 提示“客户机操作系统已禁用 CPU。请关闭或重置虚拟机。”

目录 实验环境报错截图报错原因猜测(根据实验现象)解决办法如下 实验环境 Vmware Workstation 17.5 CentOS7 镜像版本:2207-02版本 注意:2009版本并无该错误 报错截图 报错原因猜测(根据实验现象) CentO…

​platform --- 获取底层平台的标识数据​

源代码: Lib/platform.py 备注 特定平台按字母顺序排列,Linux 包括在 Unix 小节之中。 跨平台 platform.architecture(executablesys.executable, bits, linkage) 查询给定的可执行文件(默认为 Python 解释器二进制码文件)来获…

用AI画个女朋友回家过年,1行Python代码,免费实现

#这才是真功夫# 大家好,这里是程序员晚枫,全网同名。 马上过年了,还是单身的举个爪! 今年GPT系列的产品非常火爆,今天给大家分享一下,如何免费用AI代码画1个女朋友。👇 直接上代码 大家学习 或 …

Centos7防火墙及端口开启

1、防火墙 1.1、查看防火墙是否开启 systemctl status firewalld 1.2、开启防火墙 firewall-cmd --list-ports 1.3、重启防火墙 firewall-cmd --reload 2、端口 2.1、查看所有已开启的端口号 firewall-cmd --list-ports 2.2、手动开启端口 启动防火墙后,默认没有开…

【云原生kubernets】Ingress 功能与应用

一、Ingress 介绍 1.1.Ingress产生原因: 当我们使用Service的时候,Service对集群之外暴露服务的主要方式有两种:NotePort和LoadBalancer,但是这两种方式,都有一定的缺点: (1)Node…

【初阶C++】入门(超详解)

C入门 前言1. C关键字(C98)2. 命名空间2.1 命名空间定义2.2 命名空间使用2.3嵌套命名空间 3. C输入&输出4. 缺省参数4.1 缺省参数概念4.2 缺省参数分类 5. 函数重载5.1 函数重载概念5.2 C支持函数重载的原理--名字修饰(name Mangling) 6. 引用6.1 引用概念6.2 引用特性6.3 …

C++初阶(十五)Stack和Queue

文章目录 一、Stack的模拟实现二、Queue的模拟实现三、容器适配器1、什么是容器适配器2、STL标准库中stack和queue的底层结构3、 deque的简单介绍(了解)1、deque的原理介绍2、deque的缺陷 4、为什么选择deque作为stack和queue的底层默认容器 一、Stack的模拟实现 #include<…

Web server failed to start. Port 8888 was already in use.

端口占用 强制终止占用端口的进程 获取占用端口的进程ID&#xff08;PID&#xff09;&#xff1a;在终端或命令提示符中运行以下命令以查找占用端口的进程ID&#xff1a; ①在 Unix/Linux/Mac 上&#xff1a;lsof -i :8888 ②在 Windows 上&#xff1a;netstat -ano | findstr …

JS基础中VO和AO的关系

JS基础中VO和AO的关系 AO(Active Object)VO(Variable Object)AO和VO的关系 AO(Active Object) AO(ActiveObject)是函数的活动对象&#xff0c;它是在函数执行时创建的一个对象&#xff0c;用于存储函数内部的变量和函数声明。 VO(Variable Object) VO(VariableObject)是变量对象…

Cocoa Mac音频模块关键步骤总结

1. .driver 插件 #include <CoreAudio/AudioServerPlugIn.h> 头文件 static AudioServerPlugInDriverInterface gAudioServerPlugInDriverInterface 静态函数struct&#xff0c; 返回一系列回调的函数指针 //开始io&#xff0c;代表有对象链接进来了&#xff0c;如果是…

java实现局域网内视频投屏播放(四)投屏实现

代码链接​​​​​​​​​​​​​​​​​​​​​ 设备发现 上一篇文章说过&#xff0c;设备的发现有两种情况&#xff0c;主动和被动&#xff0c;下面我们来用java实现这两种模式 主动发现 构建一个UDP请求发送到239.255.255.250:1900获取设备信息&#xff0c;UDP包的…

【价值几十万的仿抖音直播电商系统源码共享】

当下&#xff0c;传统的图文电商模式已经走向没落&#xff0c;以抖音为首的直播电商模式备受用户追捧&#xff0c;它具有实时直播和强互动的特点&#xff0c;是传统电商所不具备的优势。而且&#xff0c;当前正是直播电商的红利期&#xff0c;很多主播和品牌商都通过直播电商业…

C语言经典错误总结(二)

一.运算符优先级问题 该问题对于大多数C语言程序员都是存在的&#xff0c;原因当然就是无法准确找到表达式计算顺序。 看例题&#xff1a; 假如我们有两个整数a &#xff0c;b&#xff0c;现在我们要求整数c是一个八位整数&#xff0c;使其前4位与a相同&#xff0c;后4位与b…

【java】保留前N月数据文件,定期删除数据

数据越积越多&#xff0c;过于冗余&#xff1b;数据库定期删除指定时间前的数据&#xff1b;文件生成的删除指定时间前端文件 SFTP文件定期删除 java sftp 定时清理指定文件中固定时间 依赖 <!-- ftp文件上传/下载Jar包 --> <dependency><groupId>com.jc…

K8S(四)—pod详解

目录 pod介绍Pod的概念&#xff1a;Pod的特性&#xff1a;Pod的配置&#xff1a;Pod的控制&#xff1a;示例 YAML 文件&#xff1a; pod启动流程问题 两种方式启动镜像的升级和回滚更新 Deployment&#xff1a;回滚检查 Deployment 历史版本回滚到之前的修订版本缩放 Deploymen…

青少年CTF-Crypto(Morse code/ASCII和凯撒)

FLAG&#xff1a;你这一生到底想干嘛 专研方向: Web安全 &#xff0c;Md5碰撞 每日emo&#xff1a;不要因为别人都交卷了&#xff0c;就乱选答案 文章目录 1.Morse code2、ASCII和凯撒的约定 1.Morse code 题目提示摩尔斯电码&#xff0c;这个是给的附件 直接用摩尔斯解密&am…

Linux中的磁盘挂载与取消

Linux中的磁盘挂载与取消 前言磁盘挂载查看分区信息分区设置格式化磁盘挂载持久化挂载点配置 取消磁盘挂载查看已挂载的磁盘取消挂载 前言 今天准备给一台PVE设备添加一块磁盘&#xff0c;踩了点小坑&#xff1a;磁盘挂载后重启后发现磁盘没有被挂载&#xff0c;于是整理记录一…

antv X6

文章目录 graph配置项力导向图路由router graph配置项 https://x6.antv.antgroup.com/api/graph/graph 力导向图 https://x6.antv.antgroup.com/examples/layout/general#force 路由router https://x6.antv.antgroup.com/api/registry/router initGraph () {// https://x…