当前位置: 首页 > news >正文

【MySQL】基础SQL语句——库的操作

文章目录

  • 一. 创建数据库
    • 1.1 基础语句
    • 1.2 字符集和校验规则
    • 1.3 校验规则对读取数据的影响
  • 二. 查看数据库
  • 三. 修改数据库
  • 四. 删除数据库及备份
    • 4.1 删除
    • 4.2 备份和还原
  • 结束语

一. 创建数据库

1.1 基础语句

最简洁的创建数据库的SQL语句是:

create database db_name;
db_name是数据库的名称

创建一个数据库,本质是在MySQL配置文件中默认的存放资源的文件中创建目录

/etc/my.cnf是MySQL的配置文件
默认存放资源的路径是/var/lib/mysql
在这里插入图片描述

所以,如果我们使用MySQL创建一个database1的数据库,那么相应的,在/var/lib/mysql/中就会创建一个database1的目录
在这里插入图片描述


接下来,介绍创建数据库的选项

create database if not exists db_name;

使用create database db_name重复创建数据库,结果如下:
在这里插入图片描述
使用create database if not exists db_name,结果如下:
在这里插入图片描述

如果使用第一种SQL语句重复创建,结果是报错
如果使用第二种SQL语句重复创建,则会忽略创建语句,不会报错
实际工作中,建议使用create database if not exists db_name 创建数据库


创建数据库时,还可以指明使用的字符集校验规则

create database db_name charset=utf8 collate=utf8_general_ci
character-set,即charset,是数据存放入数据库时使用的字符集
collation,是数据取出时使用的校验规则

同样可以在配置文件/etc/my.cnf中配置默认使用的字符集和检验规则
在这里插入图片描述

1.2 字符集和校验规则

  • 字符集
    字符集是一套用于表示和处理文本数据的编码规则。在MySQL中,字符集用于定义存储,传输和处理数据时所使用的字符集合。常见的字符集包括UTF8,GBK等。字符集主要是控制使用什么语言,比如UTF8可以使用中文
  • 检验规则
    校验规则用于定义字符集中每个字符的排序规则,决定了字符比较,排序和匹配方式。例如,在排序时是按照字母的先后顺序进行排序,还是按照字母的笔画数进行排序

查看系统默认字符集以及校验规则
show variables like 'character_set_database';
show variables like 'collation_database;'
注意单引号
在这里插入图片描述

查看数据库支持的字符集或校验规则
show charset;
show collation;

1.3 校验规则对读取数据的影响

UTF8_general_ci【不区分大小写】
UTF8_bin【区分大小写】

分别使用这两种校验规则创建两个数据库test1和test2,并建立一样的表,插入一样的数据
以下是test1的操作,test2操作相同

在这里插入图片描述

是否区分大小写,会导致不同的查询结果和排序结果

  • 查询
    在这里插入图片描述

  • 排序

二. 查看数据库

show databases;
查看所有数据库
在这里插入图片描述


show create database db_name
显示创建语句
在这里插入图片描述

  • MySQL建议关键字使用大写,但是不是必须的
  • 数据库名字的反引号,是为了防止使用的数据库名刚好是关键字
  • /*!40100 default … */ 不是注释,其含义是,如果当前MySQl版本大于4.01版本,则会执行这句语句

三. 修改数据库

alter database db_name
其后跟修改的字符集或者校验规则

比如将test1数据库的字符集和校验规则修改为gbk
在这里插入图片描述

PS:十分不建议rename数据库,重命名数据库。原先可以rename,但之后删除了这个语句。
因为可能还有用户在使用该数据库,一旦重命名,将无法使用,上层调用接口等也将失效

四. 删除数据库及备份

4.1 删除

删除数据库的操作很简单

drop database if exists db_name

但是一旦删除数据库
数据库内部看不到对应的数据库
对应的数据库文件夹被删除,级联删除,里面的数据表全部都被删除
建议先备份,再删除

4.2 备份和还原

备份

备份的工具是在安装MySQL的同时安装的——mysqldump
使用命名:

mysqldump -P 3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径
-P 3306选项是连接的mysqld服务器的端口号
-u root 选项是登录的用户
-p 密码 选项是输入密码
-B 数据库 选项是指定数据库
在这里插入图片描述

这个文件内部是对该数据库使用的所有SQL语句,包括创建数据库,使用,创建表,插入数据等


还原

还原是在mysql中执行的

source 文件路径;
在这里插入图片描述

如果只想要备份数据库中的一个表

mysqldump -P 3306 -u root -p 密码 -B 数据库名 表 > 备份的文件路径

同时备份多个数据库

mysqldump -P 3306 -u root -p 密码 -B 数据库1 数据库2 > 存储路径(文件)

PS:如果备份时没有带上-B选项,那么在恢复数据库时,要先建立空的数据库,然后使用数据库,再source还原


show processlist
查看连接情况
在这里插入图片描述

可以告诉我们当前有哪些用户用户连接到我们的MySQL,如果查出某个用户不是正常登录的,很有可能你的数据库被人入侵了,如果自己的数据库比较慢时,可以使用这个指令查看数据库的连接情况

结束语

感谢你的阅读

如果觉得本篇文章对你有所帮助的话,不妨点个赞支持一下博主,拜托啦,这对我真的很重要。
在这里插入图片描述

相关文章:

【MySQL】基础SQL语句——库的操作

文章目录 一. 创建数据库1.1 基础语句1.2 字符集和校验规则1.3 校验规则对读取数据的影响 二. 查看数据库三. 修改数据库四. 删除数据库及备份4.1 删除4.2 备份和还原 结束语 一. 创建数据库 1.1 基础语句 最简洁的创建数据库的SQL语句是: create database db_nam…...

基于YOLOv8模型的海洋生物目标检测系统(PyTorch+Pyside6+YOLOv8模型)

摘要:基于YOLOv8模型的海洋生物目标检测系统可用于日常生活中检测与定位海洋生物目标,利用深度学习算法可实现图片、视频、摄像头等方式的目标检测,另外本系统还支持图片、视频等格式的结果可视化与结果导出。本系统采用YOLOv8目标检测算法训…...

华为星闪联盟:引领无线通信技术创新的先锋

星闪(NearLink),是由华为倡导并发起的新一代无线短距通信技术,它从零到一全新设计,是为了满足万物互联时代个性化、多样化的极致、创新体验需求而诞生的。这项技术汇聚了中国300多家头部企业和机构的集体智慧&#xff…...

炒期权的资金门槛是多少 ?

期权是一种合约,买方向卖方支付一定费用后有权利在特定的时间,以特定的价格买入或卖出一定数量的特定资产,卖方需履行相应义务,期权开户支持线上和零门槛开头,下文介绍炒期权的资金门槛是多少 ?本文来自:期…...

matlab根轨迹绘制

绘制根轨迹目的就是改变系统的闭环极点,使得系统由不稳定变为稳定或者使得稳定的系统变得更加稳定。 在使用PID控制器的时候,首先要确定的参数是Kp,画成框图的形式如下: 也就是想要知道Kp对系统性能有哪些影响,此时就…...

Vue错误记录

文章目录 1. 项目build的时候报错Warning: Accessing non-existent property cat of module exports inside circular dependency2. WebpackOptionsValidationError: Invalid configuration object. Webpack has been initialised using a configuration object that does not …...

Linux 修改SSH的显示样式,修改终端shell显示的样式,美观更改

要修改SSH的显示样式,您可以使用自定义的PS1(提示字符串1)变量来更改命令行提示符的外观。在您的情况下,您想要的格式似乎包括日期和时间,以及当前目录。以下是一个示例PS1设置,可以实现您所描述的样式&…...

day40 设计模式、jdk8新特性

一、代理模式 为其他对象提供一种代理控制此对象的访问 若一个对象不适合直接引用另一个对象, 代理对象在客户端和目标对象之间起到中介作用 组成: 抽象角色:通过接口 抽象类 真实角色实现了哪些方法 代理角色:实现抽象角色…...

【数据结构】链表C++编写的,它定义了一个链表,并实现了一些基本的链表操作,如创建新节点、插入节点、清空链表、输出链表以及查找节点

// 引入标准输入输出流库&#xff0c;用于输出操作 #include <iostream> // 引入标准库中的stdlib&#xff0c;包含了rand()函数和其他相关函数 #include <cstdlib> // 引入标准库中的time&#xff0c;包含了time()函数和其他相关函数 #include <ctim…...

浏览器面试题

浏览器面试题 1.常见的浏览器内核有哪些&#xff1f;2.浏览器的主要组成部分有哪些&#xff1f;3.说一说从输入URL到页面呈现发生了什么&#xff1f;4.浏览器重绘域重排的区别&#xff1f;5.CSS加载会阻塞DOM吗&#xff1f;6.JS会阻塞页面吗&#xff1f;7.说一说浏览器的缓存机…...

Java Controller层异常处理示例【含面试题】

AI绘画关于SD,MJ,GPT,SDXL百科全书 面试题分享点我直达 2023Python面试题 2023最新面试合集链接 2023大厂面试题PDF 面试题PDF版本 java、python面试题 项目实战:AI文本 OCR识别最佳实践 AI Gamma一键生成PPT工具直达链接 玩转cloud Studio 在线编码神器 玩转 GPU AI…...

通过Git Bash将本地文件上传到本地github

1. 新建一个仓库&#xff08; Repository&#xff09; 1.1登录Github&#xff0c;点击个人头像&#xff0c;点击Your repositories&#xff0c;点击New。 1.2 填写信息 Repository name: 仓库名称 Description(可选): 仓库描述介绍,不是必填项目。~~建议填写上哦&#xff01;…...

继承的笔记

继承 对象代表什么, 就得封装对应的数据, 并提供数据对应的行为 对于两种不同的类, 但是具有很多共同的属性的时候我们就想着用继承, 我们可以将共同的属性放置在一个类中, 然后, 只需要新建两个类, 继承共有的类, 然后单独写自己的属性特点 继承类 Java 中提供了一个关键字…...

Android7.1 ROOT权限的获取

修改文件&#xff1a; system/extras/su/su.c system/core/include/private/android_filesystem_config.h system/core/libcutils/fs_config.c frameworks/base/core/jni/com_android_internal_os_Zygote.cpp frameworks/base/cmds/app_process/app_main.cpp device/qcom…...

几个好用的数据标注软件labelme、CVAT及LabelImage

我们使用yolov3、yolov4、yolov5、yolov8等训练自己的权重时&#xff0c;需要有大量标注好的数据集&#xff0c;这里有几个好用的数据标注软件labelme、CVAT及LabelImage 一、labelme labelme&#xff1a;https://github.com/wkentaro/labelme 这个软件用的比较多&#xff0c…...

VSCode学习笔记一:添加代码模板

一目了然 1 简述2 设置模板3 Global Snippets file示例 1 简述 问&#xff1a;为什么要设置代码模板&#xff1f; 答&#xff1a;编程语言是有个性的&#xff0c;不同语言的演讲风格是不一样的。 旁白&#xff1a;我不懂&#xff1f;&#xff01; 问&#xff1a;为什么要设置…...

Linux下修改jar包中的配置文件application.conf

文件位置 jar包文件工程目录 打包后解压jar包目录 提取和上传 jar tf XXX.jar # 获取包内文件 application.conf是jar包的配置文件&#xff0c;如果修改需要 提取文件 jar xf my-app.jar application.conf 修改后上传文件 jar uf my-app.jar application.conf...

【python绘图—colorbar操作学习】

文章目录 Colorbar的作用Colorbar的操作截取cmap拼接cmap双刻度列colorbar 引用 Colorbar的作用 Colorbar&#xff08;颜色条&#xff09;在绘图中的作用非常重要&#xff0c;它主要用于以下几个方面&#xff1a; 表示数据范围&#xff1a; Colorbar可以显示图中的颜色映射范围…...

Python+Appium自动化测试-编写自动化脚本

之前已经讲述怎样手动使用appium-desktop启动测试机上的app&#xff0c;但我们实际跑自动化脚本的过程中&#xff0c;是需要用脚本调用appium启动app的&#xff0c;接下来就尝试写Python脚本启动app并登陆app。环境为Windows10 Python3.7 appium1.18.0 Android手机 今日头条…...

AMEYA360|ROHM罗姆首次推出硅电容器BTD1RVFL系列

全球知名半导体制造商ROHM(总部位于日本京都市)新开发出在智能手机和可穿戴设备等领域应用日益广泛的硅电容器。利用ROHM多年来积累的硅半导体加工技术&#xff0c;新产品同时实现了更小的尺寸和更高的性能。 随着智能手机等应用的功能增加和性能提升&#xff0c;业界对于支持更…...

多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度​

一、引言&#xff1a;多云环境的技术复杂性本质​​ 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时&#xff0c;​​基础设施的技术债呈现指数级积累​​。网络连接、身份认证、成本管理这三大核心挑战相互嵌套&#xff1a;跨云网络构建数据…...

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...

SciencePlots——绘制论文中的图片

文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了&#xff1a;一行…...

(二)TensorRT-LLM | 模型导出(v0.20.0rc3)

0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述&#xff0c;后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作&#xff0c;其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...

DAY 47

三、通道注意力 3.1 通道注意力的定义 # 新增&#xff1a;通道注意力模块&#xff08;SE模块&#xff09; class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...

电脑插入多块移动硬盘后经常出现卡顿和蓝屏

当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时&#xff0c;可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案&#xff1a; 1. 检查电源供电问题 问题原因&#xff1a;多块移动硬盘同时运行可能导致USB接口供电不足&#x…...

rnn判断string中第一次出现a的下标

# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...

Java数值运算常见陷阱与规避方法

整数除法中的舍入问题 问题现象 当开发者预期进行浮点除法却误用整数除法时,会出现小数部分被截断的情况。典型错误模式如下: void process(int value) {double half = value / 2; // 整数除法导致截断// 使用half变量 }此时...

MySQL JOIN 表过多的优化思路

当 MySQL 查询涉及大量表 JOIN 时&#xff0c;性能会显著下降。以下是优化思路和简易实现方法&#xff1a; 一、核心优化思路 减少 JOIN 数量 数据冗余&#xff1a;添加必要的冗余字段&#xff08;如订单表直接存储用户名&#xff09;合并表&#xff1a;将频繁关联的小表合并成…...

什么是VR全景技术

VR全景技术&#xff0c;全称为虚拟现实全景技术&#xff0c;是通过计算机图像模拟生成三维空间中的虚拟世界&#xff0c;使用户能够在该虚拟世界中进行全方位、无死角的观察和交互的技术。VR全景技术模拟人在真实空间中的视觉体验&#xff0c;结合图文、3D、音视频等多媒体元素…...