Mysqld数据库管理

一.Mysqld数据库类型

常用的数据类型

int

整型   无符号[0-4294967296(2的32次方)-1],有符号[-2147483648(2的31次方)-2147483647]
float单精度浮点    4字节32位
double双精度浮点    8字节64位
char固定长度的字符类型
varchar可变长度的字符类型
text文本
image图片
decimal(5,2)5个有效长度数字,小数点后面有2位

二.查看数据表结构的操作

查看当前的 MySQL 版本信息及连接用户名:
SELECT VERSION();
SELECT USER();

 

1.查看当前服务器中的数据库 
SHOW DATABASES;	  #大小写不区分,分号“;”表示结束

 MySQL会附带4个系统数据库: 

  • information_schema:主要存储系统中的一些数据库对象信息,如数据库名,数据库的表,表栏的数据类型与访问权限等
  • mysql:主要存储系统的用户权限信息
  • performance_schema:主要存储数据库服务器性能参数信息
  • sys:MySQL5.7之后引入的一个新的 sys 数据库,sys 库里面的表、视图、函数以及存储过程可以让用户快速了解MySQL的一些信息,它的数据来源于performance_schema
2.查看数据库中包含的表
USE 数据库名;
SHOW TABLES;
#在不切换库的情况下直接查看表:show tables from 数据库名;


 

3.查看表的结构(字段) 
USE 数据库名;
DESCRIBE [数据库名.]表名;
可缩写成:DESC 表名;
#在不切换库下查看某个表的结构:desc 库名.表名;

 

三.SQL语句 

SQL语句用于维护管理数据库,包括数据查询、数据更新、访问控制、对象管理等功能。

SQL语言分类:

  • DDL:用于管理数据库对象(库、表、索引 等)
  • DML:数据操纵语言,用于对表中的数据进行管理
  • DQL:数据查询语言,用于从数据表中查找符合条件的数据记录
  • DCL:数据控制语言,用于设置或者更改数据库用户或角色权限
1.DDL

1)创建新的数据库

CREATE DATABASE 数据库名;

2)创建新的表 

CREATE TABLE 表名 (字段1 数据类型,字段2 数据类型[,...][,PRIMARY KEY (主键名)]);
#主键一般选择能代表唯一性的字段不允许取空值(NULL),一个表只能有一个主键。

 

3)删除指定的数据表

DROP TABLE [数据库名.]表名;		#如不用USE进入库中,则需加上数据库名

4)删除指定的数据库

DROP DATABASE 数据库名;

5)修改表结构 

alter table 旧表名 rename 新表名;
alter table 表名 add 新字段 数据类型 [约束属性];
alter table 表名 change 旧字段 新字段 数据类型 [约束属性];
alter table 表名 drop 字段名;alter table 表名 add primary key(字段名);
alter table 表名 drop primary key;

6)在数据表中删除指定的数据记录 

在数据表中删除指定的数据记录
DELETE FROM 表名 [WHERE 条件表达式];例:
DELETE FROM qwer123 WHERE id=4;

7)克隆表 

create table 新表名 like 旧表名;             #克隆表结构
insert into 新表名 select * from 旧表名;     #克隆表数据       可实现表结构和表数据与旧表都一样create table 新表名 (select * from 旧表名);     #表数据和旧表是一样的,新表的结构和旧表的不一定一样

8)清空表 

清空表
delete from 表名;          #一条一条的删除记录,清空表效率较慢;AUTO_INCREMENT自增字段仍保持原有的记录truncate table 表名;       #直接重建表,清空表效率较快;AUTO_INCREMENT自增字段的记录也会重置

2.DML 用于管理表数据

1)向数据表中插入新的数据记录

INSERT INTO 表名(字段1,字段2[,...]) VALUES(字段1的值,字段2的值,...);SELECT * FROM xy101;					#查询表的数据记录

2)修改、更新数据表中的数据记录

UPDATE 表名 SET 字段名1=字段值1[,字段名2=字段值2] [WHERE 条件表达式];

 

3.DQL:用于查询表数据
SELECT 字段名1,字段名2[,...] FROM 表名 [WHERE 条件表达式];

select * from 表名\G					#以列表方式竖向显示
select * from 表名 limit 2;		    #只显示头2行
select * from 表名 limit 2,3;			#显示第2行后的前3行

4.DCL:用于管理用户和权限 
create user '用户名'@'来源地址 identified by '密码';
来源地址:
localhost ip 网段 %(任意地址) 主机名 修改用户名
rename user 'vc'@'%' to 'dvd'@'%';
修改密码
set password for '用户名'@'来源地址' = password('密码');只可以root用户
alter user '用户名'@'来源地址' identified by '密码'; 修改密码
用户权限管理:
grant 权限1, 权限2  ON 库名.表名 to '主机名'@'来源地址'identified by 密码
查看权限
show grant for '用户名'@'来源地址';
撤回权限
revoke 权限列表 on 数据库名.表名 from '用户名'@'来源地址'

四.拓展

1.如何找回root密码
1)修改MySQL配置文件,在 [mysqld] 配置项下面添加配置 skip-grant-tables 
2)重启MySQL服务,使用 mysql 命令即可直接登录数据库
3)执行命令 update mysql.user set authentication_string=password('密码') where user='root'; 来修改root用户密码
4)还原MySQL配置文件,再重启MySQL服务,即可使用命令 mysql -u root -p密码 [-h 服务器地址 -P 端口] 登录数据库
 2.权限管理
grant 权限1,权限2,....  on 库名.表名 to '用户名'@'来源地址' [identified by '密码'];     #在5.7或之前支持 grant 创建新用户和授予权限,8.0开始只能用于授予权限all [privileges]        *.*(代表 任意库.任意表)flush privileges;show grant for '用户名'@'来源地址';revoke 权限列表  on 库名.表名  from '用户名'@'来源地址';all

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

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

相关文章

Matlab基础篇:数据输入输出

前言 数据输入和输出是 Matlab 数据分析和处理的核心部分。良好的数据输入输出能够提高工作效率,并确保数据处理的准确性。本文将详细介绍 Matlab 数据输入输出的各种方法,包括导入和导出数据、数据处理和数据可视化。 一、导入数据 Matlab 提供了多种方…

计算机网络:1概述、2物理层

目录 概述因特网网络、互连网(互联网)与因特网的区别与关系因特网发展的三个阶段因特网服务提供者(Internet Service Provider,ISP)因特网的标准化工作因特网的管理结构 三种交换电路交换分组交换报文交换 计算机网络性…

Threejs-09、贴图的加载与环境遮蔽强度设置

1、创建文理加载器 let textureLoader new THREE.TextureLoader();2、加载贴图 // 加载文理 let texture textureLoader.load("./img/image.png") // 加载ao贴图 let aoMap textureLoader.load("./img/image.png");3、创建一个平面 let planeGeomet…

常见日志库NLog、log4net、Serilog和Microsoft.Extensions.Logging介绍和区别

在C#中,日志库的选择主要取决于项目的具体需求,包括性能、易用性、可扩展性等因素。以下是关于NLog、log4net、Serilog和Microsoft.Extensions.Logging的基本介绍和使用示例。 包含如何配置输出日志到当前目录下的log.txt文件及控制台的示例,…

springboot整合sentinel接口熔断

背景 请求第三方接口或者慢接口需要增加熔断处理,避免因为慢接口qps过大导致应用大量工作线程陷入阻塞以至于其他正常接口都不可用,最近项目测试环境就因为一个查询的慢接口调用次数过多,导致前端整个首页都无法加载。 依赖下载 springboo…

网络安全(完整)

WAPI鉴别及密钥管理的方式有两种,既基于证书和基于预共享密钥PSK。若采用基于证书的方式,整个国产包括证书鉴别、单播密钥协商与组播密钥通告;若采用预共享密钥方式,整个国产则为单播密钥协商与组播密钥通告蠕虫利用信息系统缺陷&…

React+TS前台项目实战(十)-- 全局常用组件CopyText封装

文章目录 前言CopyText组件1. 功能分析2. 代码详细注释3. 使用方式4. 效果展示 总结 前言 今天这篇主要讲项目常用复制文本组件封装,这个组件是一个用于拷贝文本的 React 组件,它提供了拷贝,国际化和消息提示的功能 CopyText组件 1. 功能分…

每日一题——Python实现PAT甲级1144 The Missing Number(举一反三+思想解读+逐步优化)四千字好文

一个认为一切根源都是“自己不够强”的INTJ 个人主页:用哲学编程-CSDN博客专栏:每日一题——举一反三Python编程学习Python内置函数 Python-3.12.0文档解读 目录 我的写法 时间复杂度分析 空间复杂度分析 总体空间复杂度:O(N) 总结 我…

端口映射工具下载?

天联是一款强大的端口映射工具,它能够帮助用户实现远程数据采集管理、异地统一管理、随时随地协同办公等多种场景的应用。无论您是医药、餐饮、商超等零售行业的企业,还是需要使用OA、CRM、ERP、财务进销存等系统的企业,甚至是使用视频监控设…

适用于世界上最先进的医疗应用的高压电阻器

我们的电阻器专为用于医疗诊断、治疗和预防的各种产品而设计。从小型植入式和非侵入性设备到大型诊断成像设备,医疗制造商之所以选择 EAK电阻器,是因为操作环境是高电压和磁场,准确性和稳定性至关重要。 EAK 专有的精密打印技术生产出非常适…

如何应对 CentOS 的停更?

文章目录 如何应对 CentOS 的停更?Linux发行版CentOS停更后,我们可选的替代品RHEL LinuxRocky Linux公有云 LinuxDebian 系 Linux 如何应对 CentOS 的停更? Linux发行版 Linux内核是开源的,任何人都可以获取源代码,进…

嵌入式开发实验项目【基于Arduino的智能循迹小车】步进电机版本(含完整可执行详细代码)| 另附:测试行进传感器可用性,测试小车轱辘/轮胎是否可用

“真正的光明决不是永没有黑暗的时间,只是永不被黑暗所掩蔽罢了。真正的英雄决不是永没有卑下的情操,只是永不被卑下的情操所屈服罢了。” 🎯作者主页: 追光者♂🔥 🌸个人简介: 💖[1] 计算机专业硕士研究生💖 🌿[2] 2023年城市之星领跑者TOP1(哈尔…

Hi3861 OpenHarmony嵌入式应用入门--启动流程

目录 BootLoader的启动与运行 Hi3861 RiSC-V boot 启动文件介绍 Loaderboot 启动过程 Flashboot代码介绍 printf串口配置 内核启动任务 BootLoader的启动与运行 Hi3861 RiSC-V boot 启动文件介绍 - Hi3861 的引导程序分为两部分,一部分是在芯片出厂时已经固…

Redis-数据结构-跳表详解

Redis概述 Redis-数据结构-跳表详解 跳表(Skip List)是一种基于并联的链表结构,用于在有序元素序列中快速查找元素的数据结构。 Redis 中广泛使用跳表来实现有序集合(Sorted Set)这一数据结构。 1.跳表的基本概念和…

【源码】Spring事务之事务失效及原理

Spring事务 1、【源码】SpringBoot事务注册原理 2、【源码】Spring Data JPA原理解析之事务注册原理 3、【源码】Spring Data JPA原理解析之事务执行原理 4、【源码】SpringBoot编程式事务使用及执行原理 5、【源码】Spring事务之传播特性的详解 6、【源码】Spring事务之…

搜索与人工智能相结合如何解决企业数据问题?

作者:来自 Elastic Fermi Fang 企业数据是好处还是负担? 组织正被数据淹没 —— 从安全事件日志和应用程序错误消息到物联网指标和帮助中心常见问题解答。这些丰富的信息通常存在于孤立的孤岛中,在整合这些信息以提升客户体验、提高运营弹性…

thinkphp5使用模型删除与复杂查询EXP

模型删除 应用软删除 表中需要有字段,deletetime 模型中使用下面方法 use SoftDelete;protected $deleteTime delete_time;真实删除 // 软删除 User::destroy(1); // 真实删除 User::destroy(1,true); $user User::get(1); // 软删除 $user->delete(); // 真…

js 实现将后端请求来的 Blob 数据保存到用户选择的任意目录

js实现将后端请求来的 Blob 数据保存到用户选择的任意目录 实现方式 实现方式 实现方式是使用 window 的 showSaveFilePicker 方法。Window 接口的 showSaveFilePicker() 方法用于显示一个文件选择器,以允许用户保存一个文件。可以选择一个已有文件覆盖保存&#xf…

基于Java+Swing贪吃蛇小游戏(含课程报告)

博主介绍: 大家好,本人精通Java、Python、C#、C、C编程语言,同时也熟练掌握微信小程序、Php和Android等技术,能够为大家提供全方位的技术支持和交流。 我有丰富的成品Java、Python、C#毕设项目经验,能够为学生提供各类…

兼容MacOS和FreeBSD软件包的开源ravynOS操作系统

ravynOS 是一个新型的操作系统项目,致力于在 x86-64(终极目标是同时实现 ARM)平台上提供与 macOS 类似的体验和兼容性。它基于坚若磐石的 FreeBSD、现有的开源代码和锦上添花的新代码构建。 主要设计目标: 与 macOS 应用程序的源…