【MySQL】數據庫的操作

【MySQL】數據庫的操作

目錄

  • 【MySQL】數據庫的操作
    • 創建數據庫
    • 數據庫的編碼集和校驗集
      • 查看系統默認字符集以及校驗規則
      • 查看數據庫支持的字符集
      • 查看數據庫支持的字符集校驗規則
      • 校驗規則對數據庫的影響
      • 數據庫的刪除
    • 數據庫的備份和恢復
      • 備份
      • 還原
      • 不備份整個數據庫,而是備份其中的表
      • 查看連接情況

作者:愛寫代碼的剛子

時間:2024.3.2

前言:本篇博客主要記錄數據庫的操作

創建數據庫

  • **create database +數據庫名字;**本質就是在/var/lib/mysql里創建一個目錄

  • **drop database +數據庫名字;**本質就是刪除目錄

  • create database if not exists +數據庫名字帶上if not exist選項表示沒有該數據庫就進行創建

在這里插入圖片描述

數據庫的編碼集和校驗集

  1. 數據庫編碼集:數據庫未來存儲數據
  2. 數據庫校驗集:支持數據庫,進行字段比較使用的編碼,本質也是一種讀取數據庫中數據的采用的編碼格式
  • 數據庫無論對數據做任何操作,都必須保證操作和編碼必須是編碼一致的!

查看系統默認字符集以及校驗規則

  • show variables like ‘character_set_database’; 查看數據庫默認(配置文件決定了)的字符集
  • **show variables like ‘collation_database’;**查看數據庫默認的校驗規則

在這里插入圖片描述

查看數據庫支持的字符集

  • show charset;

在這里插入圖片描述

查看數據庫支持的字符集校驗規則

  • show collation;

在這里插入圖片描述

  • 數據庫里面的db.opt文件中存放數據庫的編碼集和校驗規則

在這里插入圖片描述

創建數據庫,并設置其編碼集:

  • create database 數據庫名字 charset=utf8;
  • create database d3 character set utf8;

在這里插入圖片描述

我們可以在/var/lib/mysql對應數據庫目錄里的db.opt查看數據庫的編碼集和校驗規則。

  • **create database d4 charset=utf8 collate utf8_general_ci;**創建數據庫并設置其編碼集和校驗規則

在這里插入圖片描述

在這里插入圖片描述

校驗規則對數據庫的影響

  • 創建兩個數據庫,編碼規則相同,但是校驗規則不同:
  • utf8_ general_ ci不區分大小寫
  • utf8_bin區分大小寫

在這里插入圖片描述

  • 建表并查看表:

在這里插入圖片描述

  • 向表中插入數據:

在這里插入圖片描述

  • **select * from person;**查看表中的所有數據

在這里插入圖片描述

  • **select * from person where name=‘a’;**查看表中名為a的數據

在這里插入圖片描述

這里我們發現數據庫test1中的校驗規則為utf8_ general_ ci,并不區分大小寫

  • 使用數據庫test2做驗證:

在這里插入圖片描述

這里我們發現數據庫test2中的校驗規則為utf8_bin區分大小寫

  • **select * from person order by name;**使用order by進行排序

使用不同的校驗規則排序產生的結果并不相同:

test1:

在這里插入圖片描述

test2:

在這里插入圖片描述

數據庫的刪除

  • drop database if exists +數據庫的名字刪除數據庫,if exists表示如果存在就進行刪除

在這里插入圖片描述

執行刪除之后的結果:

  • 數據庫內部看不到對應的數據庫
  • 對應的數據庫文件夾被刪除,級聯刪除,里面的數據表全部被刪

不要隨便刪除數據庫!!!

  • **use +數據庫名;**使用數據庫

  • **select database();**查看當前在哪個數據庫中

在這里插入圖片描述

  • **alter database 數據庫名字 charset=gbk collate gbk_chinese_ci;**修改數據庫的編碼集和校驗規則

在這里插入圖片描述

  • show create database 數據庫名字顯示創建數據庫的命令

在這里插入圖片描述

說明:

  • MySQL 建議我們關鍵字使用大寫,但是不是必須的。
  • 數據庫名字的反引號``,是為了防止使用的數據庫名剛好是關鍵字。
  • /* !40100 default… */這個不是注釋,表示當前mysql版本大于4.01版本,就執行這句話

在這里插入圖片描述

數據庫的備份和恢復

備份

  • mysqldump -P3306 -uroot -p -B test1 > test1.sql將數據庫進行備份

在這里插入圖片描述

  • test.sql里面存放的并不是數據,而是我們歷史上使用的數據庫的命令

在這里插入圖片描述

還原

  • **source /root/MySQL/test1.sql;**恢復備份了的數據庫

在這里插入圖片描述

在這里插入圖片描述

不備份整個數據庫,而是備份其中的表

  • mysqldump -u root -p 數據庫名 表名1 表名2 > mysql.sql備份數據庫其中的表
  • mysqldump -u root -p -B 數據庫名1 數據庫名2 … > 數據庫存放的路徑同時備份多個數據庫

注意:如果備份一個數據庫時,沒有帶上-B參數, 在恢復數據庫時,需要先創建空數據庫,然后使用數據庫,再使用source來還原。

帶了-B選項,.sql文件中會添加create database …的選項,所以不用自己創建一個空的數據庫

查看連接情況

  • **show processlist;**查看數據庫有哪些人在使用

在這里插入圖片描述

可以告訴我們當前有哪些用戶連接到我們的MySQL,如果查出某個用戶不是自己正常登陸的,很有可能自己的數據庫被人入侵了。以后發現自己數據庫比較慢時,可以用這個指令來查看數據庫連接情況。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/714554.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/714554.shtml
英文地址,請注明出處:http://en.pswp.cn/news/714554.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

YOLOv9改進|增加SPD-Conv無卷積步長或池化:用于低分辨率圖像和小物體的新 CNN 模塊

專欄介紹:YOLOv9改進系列 | 包含深度學習最新創新,主力高效漲點!!! 一、文章摘要 卷積神經網絡(CNNs)在計算即使覺任務中如圖像分類和目標檢測等取得了顯著的成功。然而,當圖像分辨率較低或物體較小時&…

【LeetCode刷題】146. LRU 緩存

請你設計并實現一個滿足 LRU (最近最少使用) 緩存 約束的數據結構。 實現 LRUCache 類: LRUCache(int capacity) 以 正整數 作為容量 capacity 初始化 LRU 緩存int get(int key) 如果關鍵字 key 存在于緩存中,則返回關鍵字的值,否則返回 -…

全量知識系統問題及SmartChat給出的答復 之9 三套工具之4語法解析器 之2

Q23. 一個語言的語法簡約規則 這些規則顯示show 在一個給定單詞(a given word)的右邊或左邊可能出現的單詞的類別。句型的多樣性variety不是復雜文法(a complex grammar)的結果,而是簡單語法(a simple gra…

【InternLM 實戰營筆記】浦語·靈筆的圖文理解及創作部署、 Lagent 工具調用 Demo

浦語靈筆的圖文理解及創作部署 浦語靈筆是基于書生浦語大語言模型研發的視覺-語言大模型,提供出色的圖文理解和創作能力,結合了視覺和語言的先進技術,能夠實現圖像到文本、文本到圖像的雙向轉換。使用浦語靈筆大模型可以輕松的創作一篇圖文推…

進程間的通信 -- 共享內存

一 共享內存的概念 1. 1 共享內存的原理 之前我們學過管道通信,分為匿名管道和命名管道,匿名管道通過父子進程的屬性繼承原理來完成父子進程看到同一份資源的目的,而命名管道則是通過路徑與文件名來唯一標識管道文件,來讓不同的進…

學習Android的第二十一天

目錄 Android ProgressDialog (進度條對話框) 例子 Android DatePickerDialog 日期選擇對話框 例子 Android TimePickerDialog 時間選擇對話框 Android PopupWindow 懸浮框 構造函數 方法 例子 官方文檔 Android OptionMenu 選項菜單 例子 官方文檔 Android Progr…

Java實戰:Spring Boot中各類參數校驗機制

引言 在開發Web應用程序時,對客戶端傳入的參數進行有效校驗是保證系統安全性和穩定性的重要環節。Spring Boot作為一個現代化的Java開發框架,提供了多種參數校驗的方法和工具,以滿足不同場景下的需求。本文將深入探討Spring Boot中實現各種參…

typescript 的常用方式

文章目錄 前言一、綁定props 默認值的方式:withDefaults1.vue2 的props設置默認值2.vue3 的props設置默認值(1) 不設置默認值的寫法(2) 設置默認值的寫法(分離模式)(3) 設置默認值的寫法(組合模式) 二、定義一個二維數…

Matlab在同一張圖中如何加入多個圖例

根據代碼最終畫出的圖片如下: 其實原理很簡單,就是在一張figure中畫多個坐標軸,每個坐標軸都有對應的圖例,之后再將多余坐標軸隱藏,只保留一個即可。 代碼如下: clear all; close all;dd_linewidth 1;a …

maven archetype 項目原型

拓展閱讀 maven 包管理平臺-01-maven 入門介紹 Maven、Gradle、Ant、Ivy、Bazel 和 SBT 的詳細對比表格 maven 包管理平臺-02-windows 安裝配置 mac 安裝配置 maven 包管理平臺-03-maven project maven 項目的創建入門 maven 包管理平臺-04-maven archetype 項目原型 ma…

Spring學習筆記(六)利用Spring的jdbc實現學生管理系統的用戶登錄功能

一、案例分析 本案例要求學生在控制臺輸入用戶名密碼,如果用戶賬號密碼正確則顯示用戶所屬班級,如果登錄失敗則顯示登錄失敗。 (1)為了存儲學生信息,需要創建一個數據庫。 (2)為了程序連接數…

洛谷P1927防護傘

題目描述 據說 20122012 的災難和太陽黑子的爆發有關。于是地球防衛小隊決定制造一個特殊防護傘,擋住太陽黑子爆發的區域,減少其對地球的影響。由于太陽相對于地球來說實在是太大了,我們可以把太陽表面看作一個平面,中心定為(0,0…

C 基本語法

我們已經看過 C 程序的基本結構,這將有助于我們理解 C 語言的其他基本的構建塊。 C 的令牌(Token) C 程序由各種令牌組成,令牌可以是關鍵字、標識符、常量、字符串值,或者是一個符號。例如,下面的 C 語句…

30天自制操作系統(第23天)

23.1 編寫malloc 參考第22天的內容,在繪制窗口前先分配了150*50個字節大小的內存,所以導致該文件經編譯后有7.6k左右,能否在其中使用指針呢?當需要開辟空間時,移動指針即可。在之前的章節中也有函數memman_alloc函數可…

php源碼 單色bmp圖片取模工具 按任意方式取模 生成字節數組 自由編輯點陣

http://2.wjsou.com/BMP/index.html 想試試chatGPT4生成,還是要手工改 php 寫一個網頁界面上可以選擇一張bmp圖片,界面上就顯示這張bmp圖片, 點生成取模按鈕,在圖片下方會顯示這張bmp圖片的取模數據。 取模規則是按界面設置的&a…

Linux 的交換空間(swap)是什么?有什么用?

目錄 swap是什么?swap有什么用?swap使用典型場景如何查看你的系統是否用到交換空間呢?查看系統中swap in/out的情況 swap是什么? swap就是磁盤上的一塊區域。它和Windows系統中的交換文件作用類似,但是它是一段連續的…

03、MongoDB -- MongoDB 權限的設計

目錄 MongoDB 權限的設計演示前準備:啟動 mongodb 服務器 和 客戶端 :1、啟動單機模式的 mongodb 服務器2、啟動 mongodb 的客戶端 MongoDB 權限的設計1、MongoDB 的每個數據庫都可以保存用戶,不止admin數據庫可以保存用戶。2、保存用戶的數據…

Linux 學習筆記(8)

八、 啟動引導 1 、 Linux 的啟動流程 1) BIOS 自檢 2) 啟動 GRUB/LILO 3) 運行 Linux kernel 并檢測硬件 4) 掛載根文件系統 5) 運行 Linux 系統的第一個進程 init( 其 PID 永遠為 1 ,是所有其它進程的父進程 ) 6) init 讀取系統引導配置文件…

GD25Q32驅動

GD25Q32是一款基于SPI的Flash芯片,容量為32/84M bytes。它的引腳如下: 該芯片支持多種SPI操作方式,包括:Standard SPI(標準SPI)、Dual SPI(雙線 SPI)和Quad SPI(四線 SPI) 。有關SPI的介紹可以參考: SPI通信原理-CSDN…

flutter 文字一行顯示,超出換行

因為app有多語言,中文和其他語言長度不一致,可能導致英文會很長。 中文樣式 英文樣式 代碼 Row(mainAxisAlignment: MainAxisAlignment.end,crossAxisAlignment: CrossAxisAlignment.end,children: [Visibility(visible: controller.info.fee ! null,ch…