主頁 > 資料庫 > 初識MySQL資料庫

初識MySQL資料庫

2022-02-18 07:48:27 資料庫

一 、引言

假設現在你已經是某大型互聯網公司的高級程式員,讓你寫一個火車票購票系統,來hold住雙十一期間全國的購票需求,你怎么寫?

由于在同一時段搶票的人數太多,所以你的程式不可能寫在一臺機器上,應該是多臺機器一起分擔用戶的購票請求,

那么問題就來了,票務資訊的資料存在哪里?存在檔案里么?

如果存盤在檔案里,那么存盤在哪一臺機器上呢?是每臺機器上都存盤一份么?

首先,如果其中一臺機器上賣出的票另外的機器是感知不到的,

其次,是如果我們將資料和程式放在同一個機器上,如果程式和資料有一個出了問題都會導致整個服務不可用;

最后,是操作檔案,修改檔案對Python代碼來說是一件很麻煩的事,

基于上面這些問題,單純的將資料存盤在和程式同一臺機器上的檔案中是非常不明智的,

img

二、初識資料庫

2.1 為什么要用資料庫

根據上面的例子,我們已經知道:

  1. 將檔案和程式在一臺機器上是很不合理的,
  2. 操作檔案是一件很麻煩的事,

所以就出現了一個新的概念——資料庫,

你可以理解為:資料庫是一個可以在一臺機器上獨立作業的,并且可以給我們提供高效、便攜的方式對資料進行增刪改查的一種工具,

如此就幫助我們解決了上面出現的問題,將所有的資料都存盤在一個獨立的機器上,而對用戶提供服務的機器只是存放你寫的代碼,

img

2.2 資料庫的優勢

  • 程式穩定性:這樣任意一臺服務所在的機器崩潰了都不會影響資料和另外的服務,
  • 資料一致性:所有的資料都存盤在一起,所有的程式操作的資料都是統一的,就不會出現資料不一致的現象,
  • 并發:資料庫可以良好地支持并發,所有的程式操作資料庫都是通過網路,而資料庫本身支持并發的網路操作,不需要我們自己寫socket,
  • 效率:使用資料庫對資料進行增刪改查的效率要高出我們自己處理檔案很多,

三、認識資料庫

3.1 什么是資料(Data)

描述事物的符號記錄稱為資料,描述事物的符號既可以是數字,也可以是文字、圖片、影像、聲音、語言等,資料有多種表現形式,它們都可以經過數字化以后存入計算機,

在計算機中描述一個事物,就需要抽取這一事物的典型特征,組成一條記錄,就相當于檔案里的一行內容,如:

1 jason,不詳,83,1935,上海,oldboy

單純的一條記錄并沒有任何意義,如果我們按逗號作為分隔,依次定義各個欄位的意思,相當于定義表的標題:

id,name,sex,age,birth,work_addr,company  # 欄位/列名
1 jason,不詳,83,1935,上海,oldboy  # 資料

這樣我們就可以了解到:jason,性別不詳,年齡83歲,出生于1935年,在上海作業,公司是oldboy,

3.2 什么是資料庫(DataBase,簡稱DB)

資料庫即存放資料的倉庫,只不過這個倉庫是在計算機存盤設備上,而且資料是按照一定的格式存放的,

過去人們將資料存放在檔案里,現在資料量龐大,已經不再適用;

資料庫是長期存放在計算機內、有組織、可共享的資料集合,

資料庫中的資料按一定的資料模型組織、描述和儲存,具有較小的冗余度,較高的資料獨立性和易擴展性,并可為各種用戶共享,

3.3 什么是資料庫管理系統(DataBase Management System 簡稱DBMS)

在了解了Data與DB的概念后,如何科學的組織和存盤資料,如何高效獲取和維護資料成了關鍵,

這就用到了一個系統軟體——資料庫管理系統

如MySQL、Oracle、SQLite、Access、MS SQL Server

mysql主要用于大型門戶,例如搜狗、新浪等,它主要的優勢就是開放源代碼,因為開放源代碼這個資料庫是免費的,他現在是甲骨文公司的產品,
oracle主要用于銀行、鐵路、飛機場等,該資料庫功能強大,軟體費用高,也是甲骨文公司的產品,
sql server是微軟公司的產品,主要應用于大中型企業,如聯想、方正等,

資料庫管理員 DBA(Database Administrator)

3.4 資料庫服務器、資料管理系統、資料庫、表與記錄的關系(重點)

記錄:1 朱葛 13234567890 22(多個欄位的資訊組成一條記錄,即檔案中的一行內容)

表:userinfo,studentinfo,courseinfo(即檔案)

資料庫:db(即檔案夾)

資料庫管理系統:如mysql(是一個軟體)

資料庫服務器:一臺計算機(對記憶體要求比較高)

3.5 資料演變史

  1. 單獨的文本檔案

    • 沒有固定的存放位置和格式
    • 檔案名:user.txt userinfo.txt data.txt
    • 資料格式:jason|123 tony~123 kevin$123

    程式彼此之間無法兼容

  2. 軟體開發目錄規范

    規定了檔案名和存盤位置

    檔案的查找變得簡單了 并沒有解決核心問題

  3. 資料庫階段

    規定了檔案的存盤位置和資料格式

    目前正在使用的階段 解決了核心問題

3.6 資料庫管理技術的發展歷程(了解)

一 人工管理階段

20世紀50年代中期以前,計算機主要用于科學計算,

當時的硬體水平:外存只有紙帶、卡片、磁帶,沒有磁盤等直接存取的存盤設備

當時的軟體狀況:沒有作業系統,沒有管理資料的軟體,資料的處理方式是批處理,

人工管理資料具有以下特點:

  • 資料不保存:計算機主要用于科學計算,資料臨時用,臨時輸入,不保存
  • 應用程式管理資料:資料要有應用程式自己管理,應用程式需要處理資料的邏輯+物理結構,開發負擔很重

  • 資料不共享:一組資料只對應一個程式,多個程式之間涉及相同資料時,必須各自定義,造成資料大量冗余

  • 資料不具有獨立性:資料的邏輯結構或物理結構發生變化后,必須對應用程式做出相應的修改,開發負擔進一步加大

img

二 檔案系統階段

20世紀50年代后期到60年代中期

硬體水平:有了磁盤、磁鼓等可直接存取的存盤設備

軟體水平:有了作業系統,并且作業系統中已經有了專門的資料管理軟體,即檔案系統;處理方式上不僅有了批處理,而且能夠聯機實時處理

檔案系統管理資料具有以下優點:

  • 資料共享性差,冗余度大:一個檔案對應一個應用程式,不同應用有相同資料時,也必須建立各自的檔案,不能共享相同的資料,造成資料冗余,浪費空間,且相同的資料重復存盤,各自管理,容易造成資料不一致性

  • 資料獨立性差:一旦資料的邏輯結構改變,必須修改應用程式,修改檔案結構的定義,應用程式的改變,也將引起檔案的資料結構的改變,因此資料與程式之間缺乏獨立性,可見,檔案系統仍然是一個不具有彈性的無結構的資料集合,即檔案之間是孤立的,不能反映現實世界事物之間的記憶體聯系,

img

三 資料系統階段

20世紀60年代后期以來,計算機用于管理的規模越來越大,應用越來越廣泛,資料量急劇增長,同時多種應用,多種語言互相覆寫地共享資料結合要求越來越強烈

硬體水平:有了大容量磁盤,硬體架構下降

軟體水平:軟體價格上升(開發效率必須提升,必須將程式員從資料管理中解放出來),分布式的概念盛行,

資料庫系統的特點:

  • 資料結構化(如上圖)

  • 資料共享,冗余度低,易擴充

  • 資料獨立性高

  • 資料由DBMS統一管理和控制

    • a:資料的安全性保護
    • b:資料的完整性檢查
    • c:并發控制
    • d:資料庫恢復

 

四、初識MySQL

4.1 資料庫的分類(重點)

管理資料的工具有很多種,不止MySQL一個,關于分類其實可以從各個緯度來進行劃分,但是我們最常使用的分類還是根據他們存取資料的特點來劃分的,主要分為關系型和非關系型,

可以簡單的理解為,關系型資料庫需要有表結構,非關系型資料庫是key-value存盤的,沒有表結構,

兩類資料庫的區別:

關系型資料庫:

  • 擁有固定的表結構,并且表與表之間可以建立代碼層面的關系

非關系型資料庫:

  • 沒有固定的表結構,資料存盤采用的是K:V鍵值對的形式
4.1.1 關系型資料庫

MySQL、Oracle、PostgreSQL、MariaDB、sqlite、sql server、db2

  • MySQL:開源免費 使用非常規范
  • Oracle:收費 維護成本高 大型公司可能會使用
  • PostgreSQL:支持二次開發
  • MariaDB:MySQL的替代產品(并且有自己的特性)
  • sqlite:小型資料庫(django框架自帶該資料庫)

注意:

SQL陳述句通用

4.1.2 非關系型資料庫

Redis、mongoDB、memcache

  • Redis:目前最火的快取資料庫 具有很多資料結構 功能強大
  • mongoDB:檔案型資料庫 可以用在大資料和爬蟲領域
  • memcache:已經被redis淘汰

4.2 MySQL

MySQL是一個關系型資料庫管理系統,由瑞典MySQL AB 公司開發,目前屬于 Oracle 旗下產品,MySQL 是最流行的關系型資料庫管理系統之一,在 WEB 應用方面,MySQL是最好的 RDBMS (Relational Database Management System,關系資料庫管理系統) 應用軟體,

MySQL是一種關系資料庫管理系統,關系資料庫將資料保存在不同的表中,而不是將所有資料放在一個大倉庫內,這樣就增加了速度并提高了靈活性,

MySQL所使用的 SQL 語言是用于訪問資料庫的最常用標準化語言,MySQL 軟體采用了雙授權政策,分為社區版和商業版,由于其體積小、速度快、總體擁有成本低,尤其是開放原始碼這一特點,一般中小型網站的開發都選擇 MySQL 作為網站資料庫,

主要版本:

  • 5.6:使用頻率較高的版本
  • 5.7:目前正在過渡的版本
  • 8.0:目前最新的版本

不同的版本主要區別在于底層的邏輯 SQL陳述句幾乎是一模一樣的,

4.3 軟體下載和安裝

mysql為我們提供開源的安裝在各個作業系統上的安裝包,包括ios,linux,windows,

  mysql的安裝、啟動和基礎配置 —— linux版本 (https://www.cnblogs.com/Eva-J/articles/9664401.html)

  mysql的安裝、啟動和基礎配置 —— mac版本 (https://www.cnblogs.com/Eva-J/articles/9664401.html)

  mysql的安裝、啟動和基礎配置 —— windows版本 (https://www.cnblogs.com/Eva-J/articles/9669675.html)

4.4 基本使用

關于基本使用上述博客都有講解,這里就不再細說了,大致總結下就行

一定要先啟動服務端再啟動客戶端;前期在操作的時候最好使用管理員cmd操作,

  1. 環境變數的配置

  2. 直接輸入mysqld啟動服務端(當前cmd視窗不要關閉)

  3. 開設一個新的cmd視窗操作客戶端

    mysql	# 游客模式登陸
    mysql -u用戶名 -p密碼  # 賬號登錄(本地使用)
    mysql -hIP地址 -P埠號 -u用戶名 -p密碼  # 完整命令
    """第一次登錄 root用戶沒有密碼 直接連續回車即可"""
    

4.5 系統服務

將MySQL的服務端制作成系統服務,實作開機自啟動,

  1. 先關閉之前的服務端(沒啟動服務端則忽略)

  2. 以管理員身份打開cmd視窗后,將目錄切換到你解壓檔案的bin目錄,輸入mysqld --install回車運行

    這里只是添加到了系統服務,第一次還是需要手動啟動,后續便不需要手動啟動,

  3. cmd中輸入services.msc可以打開當前計算機服務串列

  4. 啟動MySQL服務

    以管理員身份在cmd中輸入:net start mysql,服務啟動成功之后,就可以登錄了

    """
    停止服務
    	net stop mysql
    移除系統服務
    	mysqld --remove
    """
    

4.6 密碼相關

4.6.1 針對管理員用戶需要設定密碼

方式1:直接在cmd視窗內使用mysqladmin命令

mysqladmin -uroot -p原密碼 password 新密碼

eg:
mysqladmin -uroot -p password 123
mysqladmin -uroot -p123 password 666

方式2:直接在登錄狀態下修改當前登錄用戶的密碼

set password=PASSWORD('密碼')
4.6.2 忘記密碼如何解決(了解)

方式1:前期如果資料庫里面沒有資料,干脆重來 !!!

方式2:跳過授權表

1.如果有啟動服務端則關閉之前的服務端
	net stop mysql
2.以跳過授權表的方式重新啟動服務端,只需要提供用戶名就可以登錄
	mysqld --skip-grant-tables
3.以管理員身份登錄
	mysql -uroot -p
4.修改管理員用戶密碼
	update mysql.user set password=password(123) where user="root" and host="localhost"; 
5.關閉服務端再正常啟動
	net stop mysql
	net start mysql
6.使用修改之后的密碼進行登錄即可  

五、初識SQL陳述句

  設想一下,當我們想要從檔案中存取資料的時候,是一個非常繁瑣的程序,主要是因為檔案中所有的內容對我們來說是連續的,沒有規則的,如果我們將資料按照規則存在一個檔案中,再設計一種規則可以拼湊組合成我們需要的操作,并通過這些指示在檔案中存取資料,那么操作資料是不是能夠變得更加簡單快速呢?這串規則就被我們稱為SQL,

  SQL : 結構化查詢語言(Structured Query Language)簡稱SQL(發音:/?es kju? ?el/ "S-Q-L"),是一種特殊目的的編程語言,是一種資料庫查詢和程式設計語言,用于存取資料以及查詢、更新和管理關系資料庫系統,

  SQL語言主要用于存取資料、查詢資料、更新資料和管理關系資料庫系統,SQL語言由IBM開發,SQL語言分為3種型別:

  1. DDL陳述句 資料庫定義語言: 資料庫、表、視圖、索引、存盤程序,例如CREATE DROP ALTER

  2. DML陳述句 資料庫操縱語言: 插入資料INSERT、洗掉資料DELETE、更新資料UPDATE、查詢資料SELECT

  3. DCL陳述句 資料庫控制語言: 例如控制用戶的訪問權限GRANT、REVOKE

5.1 基本SQL陳述句

"""SQL陳述句的結束必須使用分號"""
1.如何查看所有的資料庫名稱
	show databases;  '''會有一個臨時產生在記憶體的庫:in...sc'''
	
2.如何查看某個庫所有的表名稱
	use 庫名;  '''切換庫(類似于雙擊了檔案夾)'''
	show tables;
    
3.如何某個表查看所有的記錄
	select * from 表名;
"""如果內容較多展示不全出現錯亂的情況 可以在陳述句后面加\G"""

5.2 針對庫的SQL陳述句

# 增
	create database 資料庫名;
# 查
	show databases;  # 查看所有的庫名
	show create database 資料庫名;  # 定向查看某個庫
# 改
	alter database 資料庫名 charset='utf8';
# 刪
	drop database 資料庫名;

5.3 針對表的SQL陳述句

"""
要想操作表必須得先有庫
	1.先創建庫
		create database db1;
	2.查看當前所在的庫名
		select database();
	3.切換庫
		use db1;
"""
# 增
	create table 表名(欄位名1 欄位型別1,欄位2 欄位型別2);
# 查
	show tables;  # 查看當前庫下面所有的表名
	show create table 表名;  # 查看指定的表資訊
	describe 表名;  # 查看表的具體資訊(常用)  可簡寫為:desc 表名;
# 改
	alter table t1 rename ttt;  # 修改表名
	alter table ttt change id nid int;  # 修改欄位名和型別
	alter table ttt modify nid char(4);  # 修改欄位型別
# 刪
	drop table 表名;

5.4 針對記錄的操作

"""
要操作記錄得先確定庫和表
"""
# 增
	insert into 表名 values(資料,資料,資料);  '''單條資料'''
	insert into 表名 values(),(),();  '''多條資料'''
# 查
	select * from 表名;  '''查詢表中所有的資料'''
# 改
	update 表名 set 欄位名='新資料' where 篩選條件;
# 刪
	delete from 表名 where 篩選條件;

5.5 字符編碼問題

# 查看MySQL內部默認的編碼情況
	\s
 
"""MySQL默認的組態檔>>>:mydefault.ini"""
1.拷貝默認的組態檔并且重新命名為my.ini
2.拷貝固定的配置資訊
	[mysqld]
    character-set-server=utf8
    collation-server=utf8_general_ci
    [client]
    default-character-set=utf8
    [mysql]
    default-character-set=utf8
3.重啟MySQL服務端

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/426469.html

標籤:其他

上一篇:MongoDB學習筆記:默認資料庫與集合

下一篇:當T為“Any”型別時,通用引數需要“Nothing”型別

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • GPU虛擬機創建時間深度優化

    **?桔妹導讀:**GPU虛擬機實體創建速度慢是公有云面臨的普遍問題,由于通常情況下創建虛擬機屬于低頻操作而未引起業界的重視,實際生產中還是存在對GPU實體創建時間有苛刻要求的業務場景。本文將介紹滴滴云在解決該問題時的思路、方法、并展示最終的優化成果。 從公有云服務商那里購買過虛擬主機的資深用戶,一 ......

    uj5u.com 2020-09-10 06:09:13 more
  • 可編程網卡芯片在滴滴云網路的應用實踐

    **?桔妹導讀:**隨著云規模不斷擴大以及業務層面對延遲、帶寬的要求越來越高,采用DPDK 加速網路報文處理的方式在橫向縱向擴展都出現了局限性。可編程芯片成為業界熱點。本文主要講述了可編程網卡芯片在滴滴云網路中的應用實踐,遇到的問題、帶來的收益以及開源社區貢獻。 #1. 資料中心面臨的問題 隨著滴滴 ......

    uj5u.com 2020-09-10 06:10:21 more
  • 滴滴資料通道服務演進之路

    **?桔妹導讀:**滴滴資料通道引擎承載著全公司的資料同步,為下游實時和離線場景提供了必不可少的源資料。隨著任務量的不斷增加,資料通道的整體架構也隨之發生改變。本文介紹了滴滴資料通道的發展歷程,遇到的問題以及今后的規劃。 #1. 背景 資料,對于任何一家互聯網公司來說都是非常重要的資產,公司的大資料 ......

    uj5u.com 2020-09-10 06:11:05 more
  • 滴滴AI Labs斬獲國際機器翻譯大賽中譯英方向世界第三

    **桔妹導讀:**深耕人工智能領域,致力于探索AI讓出行更美好的滴滴AI Labs再次斬獲國際大獎,這次獲獎的專案是什么呢?一起來看看詳細報道吧! 近日,由國際計算語言學協會ACL(The Association for Computational Linguistics)舉辦的世界最具影響力的機器 ......

    uj5u.com 2020-09-10 06:11:29 more
  • MPP (Massively Parallel Processing)大規模并行處理

    1、什么是mpp? MPP (Massively Parallel Processing),即大規模并行處理,在資料庫非共享集群中,每個節點都有獨立的磁盤存盤系統和記憶體系統,業務資料根據資料庫模型和應用特點劃分到各個節點上,每臺資料節點通過專用網路或者商業通用網路互相連接,彼此協同計算,作為整體提供 ......

    uj5u.com 2020-09-10 06:11:41 more
  • 滴滴資料倉庫指標體系建設實踐

    **桔妹導讀:**指標體系是什么?如何使用OSM模型和AARRR模型搭建指標體系?如何統一流程、規范化、工具化管理指標體系?本文會對建設的方法論結合滴滴資料指標體系建設實踐進行解答分析。 #1. 什么是指標體系 ##1.1 指標體系定義 指標體系是將零散單點的具有相互聯系的指標,系統化的組織起來,通 ......

    uj5u.com 2020-09-10 06:12:52 more
  • 單表千萬行資料庫 LIKE 搜索優化手記

    我們經常在資料庫中使用 LIKE 運算子來完成對資料的模糊搜索,LIKE 運算子用于在 WHERE 子句中搜索列中的指定模式。 如果需要查找客戶表中所有姓氏是“張”的資料,可以使用下面的 SQL 陳述句: SELECT * FROM Customer WHERE Name LIKE '張%' 如果需要 ......

    uj5u.com 2020-09-10 06:13:25 more
  • 滴滴Ceph分布式存盤系統優化之鎖優化

    **桔妹導讀:**Ceph是國際知名的開源分布式存盤系統,在工業界和學術界都有著重要的影響。Ceph的架構和演算法設計發表在國際系統領域頂級會議OSDI、SOSP、SC等上。Ceph社區得到Red Hat、SUSE、Intel等大公司的大力支持。Ceph是國際云計算領域應用最廣泛的開源分布式存盤系統, ......

    uj5u.com 2020-09-10 06:14:51 more
  • es~通過ElasticsearchTemplate進行聚合~嵌套聚合

    之前寫過《es~通過ElasticsearchTemplate進行聚合操作》的文章,這一次主要寫一個嵌套的聚合,例如先對sex集合,再對desc聚合,最后再對age求和,共三層嵌套。 Aggregations的部分特性類似于SQL語言中的group by,avg,sum等函式,Aggregation ......

    uj5u.com 2020-09-10 06:14:59 more
  • 爬蟲日志監控 -- Elastc Stack(ELK)部署

    傻瓜式部署,只需替換IP與用戶 導讀: 現ELK四大組件分別為:Elasticsearch(核心)、logstash(處理)、filebeat(采集)、kibana(可視化) 下載均在https://www.elastic.co/cn/downloads/下tar包,各組件版本最好一致,配合fdm會 ......

    uj5u.com 2020-09-10 06:15:05 more
最新发布
  • day02-2-商鋪查詢快取

    功能02-商鋪查詢快取 3.商鋪詳情快取查詢 3.1什么是快取? 快取就是資料交換的緩沖區(稱作Cache),是存盤資料的臨時地方,一般讀寫性能較高。 快取的作用: 降低后端負載 提高讀寫效率,降低回應時間 快取的成本: 資料一致性成本 代碼維護成本 運維成本 3.2需求說明 如下,當我們點擊商店詳 ......

    uj5u.com 2023-04-20 08:33:24 more
  • MySQL中binlog備份腳本分享

    關于MySQL的二進制日志(binlog),我們都知道二進制日志(binlog)非常重要,尤其當你需要point to point災難恢復的時侯,所以我們要對其進行備份。關于二進制日志(binlog)的備份,可以基于flush logs方式先切換binlog,然后拷貝&壓縮到到遠程服務器或本地服務器 ......

    uj5u.com 2023-04-20 08:28:06 more
  • day02-短信登錄

    功能實作02 2.功能01-短信登錄 2.1基于Session實作登錄 2.1.1思路分析 2.1.2代碼實作 2.1.2.1發送短信驗證碼 發送短信驗證碼: 發送驗證碼的介面為:http://127.0.0.1:8080/api/user/code?phone=xxxxx<手機號> 請求方式:PO ......

    uj5u.com 2023-04-20 08:27:27 more
  • 快取與資料庫雙寫一致性幾種策略分析

    本文將對幾種快取與資料庫保證資料一致性的使用方式進行分析。為保證高并發性能,以下分析場景不考慮執行的原子性及加鎖等強一致性要求的場景,僅追求最終一致性。 ......

    uj5u.com 2023-04-20 08:26:48 more
  • sql陳述句優化

    問題查找及措施 問題查找 需要找到具體的代碼,對其進行一對一優化,而非一直把關注點放在服務器和sql平臺 降低簡化每個事務中處理的問題,盡量不要讓一個事務拖太長的時間 例如檔案上傳時,應將檔案上傳這一步放在事務外面 微軟建議 4.啟動sql定時執行計劃 怎么啟動sqlserver代理服務-百度經驗 ......

    uj5u.com 2023-04-20 08:26:35 more
  • 云時代,MySQL到ClickHouse資料同步產品對比推薦

    ClickHouse 在執行分析查詢時的速度優勢很好的彌補了MySQL的不足,但是對于很多開發者和DBA來說,如何將MySQL穩定、高效、簡單的同步到 ClickHouse 卻很困難。本文對比了 NineData、MaterializeMySQL(ClickHouse自帶)、Bifrost 三款產品... ......

    uj5u.com 2023-04-20 08:26:29 more
  • sql陳述句優化

    問題查找及措施 問題查找 需要找到具體的代碼,對其進行一對一優化,而非一直把關注點放在服務器和sql平臺 降低簡化每個事務中處理的問題,盡量不要讓一個事務拖太長的時間 例如檔案上傳時,應將檔案上傳這一步放在事務外面 微軟建議 4.啟動sql定時執行計劃 怎么啟動sqlserver代理服務-百度經驗 ......

    uj5u.com 2023-04-20 08:25:13 more
  • Redis 報”OutOfDirectMemoryError“(堆外記憶體溢位)

    Redis 報錯“OutOfDirectMemoryError(堆外記憶體溢位) ”問題如下: 一、報錯資訊: 使用 Redis 的業務介面 ,產生 OutOfDirectMemoryError(堆外記憶體溢位),如圖: 格式化后的報錯資訊: { "timestamp": "2023-04-17 22: ......

    uj5u.com 2023-04-20 08:24:54 more
  • day02-2-商鋪查詢快取

    功能02-商鋪查詢快取 3.商鋪詳情快取查詢 3.1什么是快取? 快取就是資料交換的緩沖區(稱作Cache),是存盤資料的臨時地方,一般讀寫性能較高。 快取的作用: 降低后端負載 提高讀寫效率,降低回應時間 快取的成本: 資料一致性成本 代碼維護成本 運維成本 3.2需求說明 如下,當我們點擊商店詳 ......

    uj5u.com 2023-04-20 08:24:03 more
  • day02-短信登錄

    功能實作02 2.功能01-短信登錄 2.1基于Session實作登錄 2.1.1思路分析 2.1.2代碼實作 2.1.2.1發送短信驗證碼 發送短信驗證碼: 發送驗證碼的介面為:http://127.0.0.1:8080/api/user/code?phone=xxxxx<手機號> 請求方式:PO ......

    uj5u.com 2023-04-20 08:23:11 more