数据库基础及用户管理授权

news2024/11/22 15:41:48

数据库概念

关系型数据库 数据结构二维表格 库 -> 表 -> 列(字段):用来描述对象的的一个属性;行:用来描述一个对象的信息

mysql(5.7/8.0) maridb ocracle postgresql sqlserver(windows)

RDB阿里云数据库 高斯(华为的) TDBA(腾讯的)ocenabase(阿里的)人大金仓 达梦

非关系型数据库

缓存型的 redis memcache

文档型的 mongoDB

搜索型的 elasticserch

时序型的 prometheus(监控数据)

常见操作系统 欧拉,乌班图apt安装deb包,

键值对 k/y key/value 键/值

sql语句 DDL创建数据库对象 DML内容 DQL搜索 DCL控制语句

DDL 用于创建数据库的对象:库 表 索引

create database 库名;

create table 表明 (字段名1 数据类型 【字段属性】,【字段属性】 . . . .);

show databases;查看库

use 库名;

show tables;

show tables from 库名;

desc 表名;查表得结构

DML 用于管理表数据

insert into 表名 (字段1,字段2,. . . . )values(对应字段1的值,字段2的值, . . . . );

insert into 表名 values (按照字段顺序的所有字段的值);

delete from 表名 where 条件表达式;

update 表明 set 字段=值 ,. . . . where 条件表达式;

DQL 用于根据条件查询表数据

select 字段1,字段2 ,. . .  from 表名 where 条件表达式;

select * from 表明 limite N;N查看表前几行

select * from 表明 limite N,M;查看N行之后的多少行到M前那行(不包含第N行)

select * from 表明/G;按竖向结构查看

需改表结构 alter table 旧表名 rename 新表名;

增加表字段 alter table 表明 add 新字段 数据类型 字段属性;

修改表字段名 alter table 表明 cahnge 旧字段名 新子段名 字段属性;

删除字段 alter table 表名 drop 字段名;

 char和varchar的区别 char大小固定值,小的往后空格,varchar可变的最小为1

案例扩展
use school;
create table if not exists info (
id int(4) zerofill primary key auto_increment,     #指定主键的第二种方式
name varchar(10) not null,
cardid int(18) not null unique key,
hobby varchar(50));
------------------------------------------------------------------------------------------------------------------------
#if not exists:表示检测要创建的表是否已存在,如果不存在就继续创建
#int(4) zerofill:表示若数值不满4位数,则前面用"0"填充,例0001
#auto_increment:表示此字段为自增长字段,即每条记录自动递增1,默认从1开始递增;
自增长字段数据不可以重复;自增长字段必须是主键;如添加的记录数据没有指定此字段的值且添加失败也会自动递增一次
#unique key:表示此字段唯一键约束,此字段数据不可以重复:一张表中只能有一个主键,但是一张表中可以有多个唯一键
#not null:表示此字段不允许为NULL

主键字段:不能为空,一个表中只能有一个主键,所有字段中主键字段唯一

唯一键:可以空,一个表可有多个唯一键。但一个表内不能重复

自增长命令执行失败id会自增一边

create table if not exists ky27 (id int(4) zerofill primary key auto _increment,name char(10) not null default 'nobody',phone int not null,sex char(4));

insert into ky27 (name,phone,sex) values ('zhangsan',123456789,'男');

alter table ky27 add unique key(phone);

克隆表

法一create table test1(新表) like test2(旧表);

insert into test1 select * from test2 ;

法二

create table test2 (select * from test2);

会出现新旧表结构不一样

清空表法一

delete from  test1 ;用delete删除时自增长字段仍然会按照星空前的顺序自增,一条一条删,清空效率慢

法二 truncate table test1;直接重建表,清空效率快,新表自增长从1开始

创建临时表(当前会话当中)

show tables看不到表名

create temproary  table test1 (id int,name char(10),sex char(4))

mysql 六大常见约束

主键约束 primay key

唯一键约束 unique key

非空约束 not null

默认值约束 default

自增约束 auto_increment

外键约束 foreign key 两个表关联表的的内键与另一个表的外键捆绑。

外键的定义:如果同一个属性字段X在表一中是主键,而在表二中不是主键,则字段X称为表二的外键。

创建主表 profession

create table prof (pid int, pname char(10));

create table student (id int, name varchar(10),age int, proid int);

pid 与proid相关

alter table prof add primary key(pid);

desc prof;

alter table student add constraint FK_pro_foreign key (proid) references prof (pid);插入数据时必须先给主表插入数据insert into prof values (1,'大数据')

insert into student values (1,'yht',26,1);

外键表删delete from student

查看表结构 show create table student\G更详细。

alter table student drop foreign key FK_PRO;删除表结构

DCL

数据库用户管理

create user '用户名'@'源地址' identified by '密码';(源地址为localhost/%)

select user,local,authentcation_string form mysql.user;

查看用户

'root'@'localhost'默认用的localhost登录

'root'@'%' 不同ip链接用户

新建用户 create user 'zhangsan'@'localhost' identified by 'abc123';

select

 password('123456');

create user 'lisi'@''localhost’

select user()查看当前登录用户

rename user 'lisi'@'localhost' to 'wangwu'@'localhost'

drop user 'wangwu'@'localhost';

set password = password('123456');该当前用户密码

set password for 'zhangsan'@'localhost' =password('abc123')只等用户修改密码

寻找root密码

vim /etc/my.cnf 可以在【mysqld】下添加skip-grant-tables

修改

 

重启mysql

systemctl restart mysql

mysql

uae mysql

desc user

update user set authenticaton_string=paassword('abc123') where user='root' and host='localhost';

flush privileges;刷新

改完后

还原修改配置文件

vim /etc/my.cnf

 刷新数据库

数据库的用户授权

grant 权限1,权限2,. . . . on 库名.表明 to '用户名'@'源地址' [identified by '密码']

授权用户权限是 all privilege。这个all privilege 都有哪些权限?all privilege 权限如下

insert (插入数据)select (查询数据)

update (更新表的数据)

delete (删除表中数据)

create (创建库,表)

(删除库,表)drop

refernces

index(建立索引)alter(更改表属性)

create temp orary tableslock tables (锁表)

execute

create view (创建视图(显示视图)show viewcreate routine (创建存储过程alter routine(修改存储过程)event (事件)

trigger on(创建触发器)

grant select,insert,create on kgc.* to 'lisi'@'%' identified by '123456';

flush privileges;

mysql -ulisi -p123456 -h 192.168.232.105 -p 3306

查看用户自己有什么权限

show grants for 'lisi'@'%'

grant all privileges on *.* to 'zhagnsan'@'localhost';

撤销权限

revoke all on *.* from 'zhangsan'@'localhost';

删除用户

drop user 'zhangsan'@'localhost';

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

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

相关文章

2D火焰特效

Unity面片实现火焰效果 一、效果说明 大家好,我是阿赵。这是一个火焰的效,不过它不是粒子做的,是用一个面片做的,可以理解成是2D的特效。这个例子很简单,但可以拓展一下思路,原来除了用序列帧和粒子做动画…

将页面元素隐藏的10种方法

在Web开发中,隐藏页面元素使其视觉不可见是一个非常常见的需求。为了实现这一目标,我们通常会采用多种方法,最常用的例如CSS的display属性,只要设置为node即可隐藏元素。 本文将通过对当前所有可用的隐藏元素的方法做一个总结&…

Flink系列-11、Flink DataStream的Sink

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 大数据系列文章目录 官方网址:https://flink.apache.org/ 学习资料:https://flink-learning.org.cn/ 目录 Flink在批处…

云效/git 删除特殊字符远程分支

云效/git 删除特殊字符远程分支 一、查看所有分支二、删除分支三、验证 在使用云效时,不小心添加了一个错误分支 de’vdev ,在云效手动删除时,报错“找不到分支”,无法删除。只能启动git命令进行查看,将步骤总结如下&a…

【JAVA】#详细介绍!!! 文件操作之文件内容操作(2)!

本文主要是针对文件内容的操作进行展开,文件内容操作无非就两种 1.针对文件进行“读” 2.针对文件进行“写” 目录 文件内容读写的形式 字符流 字节流 文件内容操作 InputStream:以字节流的形式进行读操作 创建方式: FileInputStream的…

2023年深圳CPDA数据分析师认证到这里就对了哦

CPDA数据分析师认证是大数据方面的认证,助力数据分析人员打下扎实的数据分析基础知识功底,为入门数据分析保驾护航。 帮助数据分析人员掌握系统化的数据分析思维和方法论,提升工作效率和决策能力,遇到问题能够举一反三&#xff0c…

MySQL索引的底层实现原理

索引的底层实现原理 数据库索引是存储在磁盘上的,当数据量大时,就不能把整个索引全部加载到内存了,只能逐一加载每一个磁盘块(对应索引树的节点),索引树越低,越“矮胖”,磁盘IO次数…

主动式和被动式电容笔的区别在哪?苹果平替笔性价比高的

被动式电容笔与主动式电容笔最大的不同之处在于主动式电容笔具有更加广泛的应用领域,可以与各种种类的电容式屏幕相匹配。随着对电容笔的了解,电容笔的使用也日益广泛。而且平替电容笔的制造工艺已经日趋成熟,正在走向实用,并且已…

易观千帆 | Q1运营报告:手机银行MAU超5.3亿,行业“内卷”超出想象

易观:由中国电子银行网、易观分析联合发布的“2023中国手机银行综合运营报告”显示:在经济企稳回升的大背景下,中国手机银行第一季度综合运营指数季度内呈平稳上升态势,手机银行活跃人数环比增幅逐月递增,促使活跃用户…

Redis主从复制和哨兵模式

Redis主从复制 概念 主从复制,是指将一台Redis服务器的数据,复制到其他的Reds服务器。前者称为主节点(master / leader),后者称为从节点(slave / follower)。 数据的复制是单向的,只能由主节点到从节点。 Master以写为主,Slave…

无公网IP,SSH远程连接Linux CentOS服务器【内网穿透】

目录 视频教程 1. Linux CentOS安装cpolar 2. 创建TCP隧道 3. 随机地址公网远程连接 4. 固定TCP地址 5. 使用固定公网TCP地址SSH远程 本次教程我们来实现如何在外公网环境下,SSH远程连接家里/公司的Linux CentOS服务器,无需公网IP,也不…

Go语言的基础语法以及变量和常量

目录 基础语法 行分隔符 注释 标识符 变量 声明 赋值 作用域 常量 声明 iota 基础语法 行分隔符 在Go程序中,一般一行就是一个语句,不像Java等可以在一行写多个语句一样,而且最后也不需要用";"来结尾。 例如&#xf…

【华为OD机试 2023最新 】箱子之字形摆放(C语言题解 100%)

文章目录 题目描述输入描述输出描述备注用例题目解析C语言题目描述 有一批箱子(形式为字符串,设为str), 要求将这批箱子按从上到下以之字形的顺序摆放在宽度为 n 的空地,请输出箱子的摆放位置。 例如:箱子ABCDEFG,空地宽度为3,摆放结果如图: 则输出结果为: AFG BE C…

Linux Shell编程入门到实战(六)

🍓 简介:java系列技术分享(👉持续更新中…🔥) 🍓 初衷:一起学习、一起进步、坚持不懈 🍓 如果文章内容有误与您的想法不一致,欢迎大家在评论区指正🙏 🍓 希望这篇文章对你有所帮助,欢…

国考省考结构化面试:整体介绍,考试题型,考试流程,仪表着装,如何备考?

国考省考结构化面试:整体介绍,考试题型,考试流程,仪表着装,如何备考? 2022找工作是学历、能力和运气的超强结合体! 公务员特招重点就是专业技能,附带行测和申论,而常规国考省考最重…

基于ChatGPT的文档知识库客服系统-支持上传网址/文本/docx等数据

现在,很多公司都有自己的内容知识库,会产生大量的碎片话的内部知识,但是这样内部知识难以整合搜索。 我开发的文档知识库客服系统 gofly.v1kf.com ,可以应用于企业内部知识库管理,用户可以使用自然语言提问&#xff0c…

杂谈:铜钱儿

我个人是比较喜欢铜钱儿的。 收藏其实谈不上,因为我不买什么名品,都是玩儿一些屌丝钱,穷嘛,这个也没啥好掩饰的~ 瞎聊点儿钱币的话题吧。 小时候是家里偶尔能发现铜钱儿,一般都是清朝的,乾隆居多。有时候地…

【苹果IM群发家庭推日历推群发】筛选“兼容性”,默认为高效,挑选“兼容性”视频和图象不操纵HEVC的新格式,承袭使用旧的MPEG格式

推荐内容IMESSGAE相关 作者✈️IMEAE推荐内容iMessage苹果推软件 *** 点击即可查看作者要求内容信息作者✈️IMEAE推荐内容1.家庭推内容 *** 点击即可查看作者要求内容信息作者✈️IMEAE推荐内容2.相册推 *** 点击即可查看作者要求内容信息作者✈️IMEAE推荐内容3.日历推 *** …

Vue学习笔记(0504)

此页面对应着创建的Vue项目的显示页面 默认可以从下面的地址进行访问:http://localhost:8080 这里由于创建项目时我们选择了语法规范,所以我们在保存时哪些不符合代码规范的地方就会报错,只有修正代码规范后错误才会消失。 这里可以看出我们…

PyQt5桌面应用开发(7):文本编辑+语法高亮与行号

本文目录 PyQt5桌面应用系列代码编辑和语法高亮的亿点点细节作为用户报表的文本控件作为编辑器的文本控件代码编辑器的需求 代码编辑[^1]语法高亮[^2]小结 PyQt5桌面应用系列 PyQt5桌面应用开发(1):需求分析 PyQt5桌面应用开发(2&…