Mysqld数据库管理

news2024/11/26 8:52:32

一.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 'root'@'%' to 'wei'@'%';
修改密码
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.coloradmin.cn/o/1845630.html

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

相关文章

最新Springboot小程序医院核酸检测服务系统

采用技术 最新Springboot小程序医院核酸检测服务系统的设计与实现~ 开发语言:Java 数据库:MySQL 技术:SpringBootMyBatis 工具:IDEA/Ecilpse、Navicat、Maven 页面展示效果 管理员页面 医护人员管理 普通管理员管理 接种进…

行车记录仪文件夹“0字节”现象解析与恢复策略

一、行车记录仪文件夹“0字节”现象描述 行车记录仪作为现代驾驶中的必备设备,其储存的视频数据对于事故记录和取证至关重要。然而,有时车主们可能会遇到这样一个问题:行车记录仪的某个文件夹内的文件突然变成了0字节大小,无法正…

Transformer的上下文学习能力是哪来的?

有理论基础,我们就可以进行深度优化了。 为什么 transformer 性能这么好?它给众多大语言模型带来的上下文学习 (In-Context Learning) 能力是从何而来?在人工智能领域里,transformer 已成为深度学习中的主导模型,但人们…

Python多语言欧拉法和预测校正器实现

📜流体力学电磁学运动学动力学化学和电路中欧拉法 📜流体力学电磁学运动学动力学化学和电路中欧拉法示例:Python重力弹弓流体晃动微分方程模型和交直流电阻电容电路 ✒️多语言实现欧拉法和修正欧拉法 在数学和计算科学中,欧拉…

用群辉NAS打造影视墙(Video Station篇)

目录 一、群辉套件Video Station 1、安装 2、进入系统 3、配置刮削器 4、获取TMDB网站API密钥 5、配置DNS (1)开启SSH (2)使用终端工具连接到NAS (3)修改hosts文件 (4)再次测试连接 6、设置目录 二、手机端APP设置 三、电视端APP 四、解决影视信息错误 N…

数仓开发那些事_番外

一位神州的正式员工(没错,就是之前文章中出现的实习生):一闪,你今年涨工资了吗? 一闪:mad,一年辛苦到头只涨了500米 神州员工:你去年绩效不是优秀吗,怎么就涨…

洛杉矶裸机云服务器怎么用

洛杉矶裸机云服务器是一种结合了物理服务器性能和云服务灵活性的高性能计算服务。它为用户提供了高效、安全的计算和存储能力,特别适合需要大量数据处理和快速响应的应用。具体分析如下,rak部落小编为您整理发布洛杉矶裸机云服务器怎么用。 1. 硬件配置选…

openstack-同一物理机中透传不同GPU时的nova配置记录

文章目录 前言一、不同加速卡的型号信息二、计算节点增加配置信息1.nova-compute服务的nova.conf 三、控制节点增加配置信息1.nova-conductor服务的nova.conf2.nova-scheduler服务的nova.conf3.nova-api服务的nova.conf 四、准备实例模版五、进行测试,创建虚拟机、检…

从零开始:视频直播美颜SDK和API开发接入详解

在当今数字化时代,视频直播已经成为了社交媒体和在线娱乐的重要组成部分。而美颜功能作为视频直播的一个关键特性,可以显著提升用户体验,吸引更多观众参与。因此,了解如何从零开始开发和接入视频直播美颜SDK和API,对于…

领域驱动设计(DDD)微服务架构模式总结

part1. Domain Driven Design(Strategic Design,Tactical Design) Top Down focus on business or activityy domain Ubiquitous Language:统一语言 Tactical Design Tools:战术性设计工具 Implementing Domain Driven Design(Event storming,DDD in code) DDD总结…

mysql model_path longblob 类型文件操作

在 MySQL 中,如果你有一个表包含一个 LONG BLOB 类型的字段(例如 model_path),你可以使用 SQL 查询来提取该字段中的二进制数据,并将其下载为文件。以下是一个完整的步骤来实现这个过程: 步骤1:…

虚拟3D沉浸式展会编辑平台降低了线上办展的门槛

在数字化浪潮的引领下,VR虚拟网上展会正逐渐成为企业展示品牌实力、吸引潜在客户的首选平台。我们与广交会携手走过三年多的时光,凭借优质的服务和丰富的经验,赢得了客户的广泛赞誉。 面对传统展会活动繁多、企业运营繁忙的挑战,许…

redis.conf 参数详解,方便进行性能优化配置

以下是redis.conf中一些常见参数的详细说明: daemonize:是否以后台进程运行,默认为no; pidfile:如以后台进程运行,则需指定一个pid,默认为/var/run/redis.pid;bind:绑定主…

微信小程序登录流程详情及Java代码

一、流程图 说明: 调用 wx.login() 获取 临时登录凭证code ,并回传到开发者服务器。 调用 auth.code2Session 接口,换取 用户唯一标识 OpenID 和 会话密钥 session_key。 获取手机号,调用wx.getPhoneNumber() ,获取加密…

AI口语练习APP的开发流程

开发AI口语练习APP是一个持续的过程,需要多学科团队的紧密合作,包括产品经理、UI/UX设计师、前后端开发者、机器学习工程师、测试工程师和市场运营人员等。随着技术的发展和用户需求的变化,开发流程可能需要相应地进行调整和优化。AI口语练习…

【Python机器学习实战】 | 基于支持向量机(Support Vector Machine, SVM)进行分类和回归任务分析

🎩 欢迎来到技术探索的奇幻世界👨‍💻 📜 个人主页:一伦明悦-CSDN博客 ✍🏻 作者简介: C软件开发、Python机器学习爱好者 🗣️ 互动与支持:💬评论 &…

zynq qspi启动、无SD卡、格式化分区emmc、调试全过程

1 背景 使用黑金开发板,全部开发流程避开使用SD卡调试,zynq开发过程中很多资料都是基于SD启动。这样就对新板卡调试带来了一定的困难,因为新板卡基本上没有设计SD卡。这里就一步一步实现qspi启动内核,格式化分区emmc,…

leetCode40组合总和(回溯)

题目 给定一个候选人编号的集合 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数字在每个组合中只能使用 一次示例 : 输入: candidates [2,5,2,1,2], target 5, 输出: [ [1,2,2], [5] ]回溯一般模…

[package-view] RegisterGUI.java-自用

java GUI : frame---> panel --> components[button/输入框/标签] JFrame-->JPanel---> [JButton/JTextField/JLabel] /** This code sets up a registration window using Swing. * The window includes input fields for the users name, ID,* and password, …

vue3 自定义指令-积分埋点

自用笔记,内容可能不全 // package.json "sunshine-track": "^1.0.0-beta.2",// track index.jsimport Track from sunshine-trackconst options {projectKey: test-project, // 项目的keyuserId: digger, // 用户idreport: {url: http://exam…