mysql 8.0.15 安裝圖文教程及數據庫基礎

這篇文章主要爲大家詳細介紹了mysql 8.0.15 安裝方法圖文教程,及數據庫基礎知識,具有一定的參考價值,感興趣的小夥伴們可以參考一下

MySQL軟件安裝及數據庫基礎,供大家參考,具體內容如下

一、任務

任務一

MySQL 軟件安裝及數據庫基礎

任務時間

請於2月26日22:00前完成,在本文章評論打卡。逾期尚未打卡的會被清退。

學習內容

1.軟件安裝及服務器設置

   教程 MySQL 安裝 | 菜鳥教程

2.(選做,但是強烈建議) 使用圖形界面軟件 Navicat for SQL

   星球提供Navicat for SQL
   簡易步驟:
      解壓縮文件,複製key
      打開文件夾中的navicat.exe
      用戶名隨意,輸入key,然後連接數據庫
      輸入密碼,連接名改成自己喜歡的
      剩下的自己探索,怎麼在navicat中創建數據庫、表等等

3.數據庫基礎知識

   數據庫定義
   關係型數據庫
   二維表
   行
   列
   主鍵
   外鍵

4.MySQL數據庫管理系統

   數據庫
   數據表
   視圖
   存儲過程

二、軟件安裝及服務器設置

系統環境:win10 家庭版

2.1 MySQL安裝

2.1.1 在MySQL官網 下載 Windows 版本的 MySQL 安裝包

地址爲:MySQL下載

點擊下載Download後會彈出以下界面,點擊 No thanks, just start my download

2.1.2 下載完後解壓,將 zip 包解壓到你想安裝的目錄,我的路徑如下所示:

2.1.3 配置環境變量:

進入 計算機—屬性—高級系統設置—環境變量,添加MySQL解壓的路徑。


2.1.4 接下來配置 MySQL 的配置文件

打開剛剛解壓的文件夾 D:\軟件\Mysql\mysql-8.0.15-winx64\mysql-8.0.15-winx64 ,創建一個配置文件爲 my.ini,編輯 my.ini 配置以下基本信息:

[mysql]
default-character-set=utf8

[mysqld]
port = 3306
basedir=D:\軟件\Mysql\mysql-8.0.15-winx64\mysql-8.0.15-winx64
datadir=D:\軟件\Mysql\mysql-8.0.15-winx64\mysql-8.0.15-winx64\data
character-set-server=utf8
default-storage-engine=INNODB


1.接下來我們來啓動下 MySQL 數據庫:
管理員身份打開 cmd 命令行工具,切換目錄:

D:
cd D:\軟件\Mysql\mysql-8.0.15-winx64\mysql-8.0.15-winx64\bin

輸入初始化命令:

mysqld --initialize-insecure --user=mysql 

在D:\軟件\Mysql\mysql-8.0.15-winx64\mysql-8.0.15-winx64\bin目錄下生成data目錄

啓動輸入以下命令即可:

net start mysql

這證明已經連接成功。

2.2 MySQL 重置密碼

2.2.1 登錄MySQL

輸入:

mysql -u root -p

因爲之前沒設置密碼,所以密碼爲空,直接回車即可:


2.2.2 查詢用戶密碼

查詢用戶密碼命令:

mysql> select host,user,authentication_string from mysql.user;

host: 允許用戶登錄的ip;
user:當前數據庫的用戶名;
authentication_string: 用戶密碼;
如果沒密碼, root 這一行應該是空的。


2.2.3 設置(或修改)root用戶密碼:

注意:在MySQL 5.7.9以後廢棄了password字段和password()函數

一定不要採取如下形式設置密碼:

use mysql; 
update user set authentication_string="newpassword" where user="root";

這樣會給user表中root用戶的authentication_string字段下設置了newpassword值;

正確修改root密碼的步驟爲:

1.如果當前root用戶authentication_string字段下有內容,先將其設置爲空,沒有就跳到步驟 2。

use mysql; 
update user set authentication_string='' where user='root'

2.使用ALTER修改root用戶密碼,方法爲:

use mysql;
ALTER user 'root'@'localhost' IDENTIFIED BY '新密碼';
FLUSH PRIVILEGES;

到此爲止自己創建的本地MySQL創建完畢!!!
重新連接即可!!!

三、使用圖形界面軟件 Navicat for SQL

Navicat for SQL安裝包已存百度網盤:navicat+for+mysql10.0.11簡體中文

1.解壓縮文件,複製key
2.打開文件夾中的navicat.exe
3.用戶名隨意,輸入key,然後連接數據庫
4.輸入密碼(之前如果MySQL重新設置過密碼,那這裏就填新設置的密碼就好),連接名改成自己喜歡的

出現的問題: 這裏連接出現失敗,如圖

解決方案:

這裏的問題其實MySQL在之前設置密碼時所用的加密方式ALTER user 'root'@'localhost' IDENTIFIED BY '新密碼';爲強加密,就會出現連接失敗的情況;如果使用第二種加密方式ALTER user 'root'@'localhost' IDENTIFIED WITH mysql_native_password by '新密碼';,就可以直接連上了。

成功連接!!!

到此,所需軟件的安裝及環境配置工作全部完成,可以開心的遨遊MySQL的世界啦~~

四、數據庫基礎知識

4.1 數據庫(database)定義

以《SQL必知必會(第4版) 》這本書來說,從 SQL的角度來看,數據庫是一個以某種有組織的方式存儲的數據集合,是保存有組織的數據的容器(通常是一個文件或一組文件)。

注意: 人們通常用數據庫這個術語來代表他們使用的數據庫軟件, 這是不正確的,也因此產生了許多混淆。確切地說,數據庫軟件應稱爲數據庫管理系統(DBMS)。數據庫是通過 DBMS創建和操縱的容器,而具體它究竟是什麼,形式如何,各種數據庫都不一樣。

4.2 關係型數據庫


關係型數據庫最典型的數據結構是表,由二維表及其之間的聯繫所組成的一個數據組織。

優點:

1.易於維護:都是使用表結構,格式一致;
2.使用方便:SQL語言通用,可用於複雜查詢;
3.複雜操作:支持SQL,可用於一個表以及多個表之間非常複雜的查詢。

缺點:

4.讀寫性能比較差,尤其是海量數據的高效率讀寫;
5.固定的表結構,靈活度稍欠;
6.高併發讀寫需求,傳統關係型數據庫來說,硬盤I/O是一個很大的瓶頸。

4.3 二維表

是一種結構化的文件,可用來存儲某種特定類型的數據。表可以保存顧客清單、 產品目錄,或者其他信息清單。表是某種特定類型數據的結構化清單

存儲在表中的數據是同一種類型的數據或清單。決不應該將顧客的清單與訂單的清單存儲在同一個數據庫表中,否則以後的檢索和訪問會很困難。 應該創建兩個表,每個清單一個表。

數據庫中的每個表都有一個名字來標識自己。 這個名字是唯一的,即數據庫中沒有其他表具有相同的名字。 雖然在相同數據庫不能兩次使用相同的表名,但在不同的數據庫中完全可以使用相同的表名。

模式可以用來描述數據庫中特定的表,也可以用來描述整個數據庫(和其中表的關係)。模式是關於數據庫和表的佈局特性的信息。

4.4 行

表中的數據是按行存儲的,所保存的每個記錄存儲在自己的行內。

你可能聽到用戶在提到時稱其爲數據庫記錄(record)。 這兩個術語多半是可以交替使用的,但從技術上說,纔是正確的術語。

4.5 列

表由組成。列存儲表中某部分的信息。列是表中的一個字段。所有表都是由一個或多個列組成的。

數據庫中每個列都有相應的數據類型。數據類型(datatype)定義了列可以存儲哪些數據種類。數據類型限定了可存儲在列中的數據種類(例如,防止在數值字段中錄入字符值)。

數據類型及其名稱是SQL不兼容的一個主要原因。

4.6 主鍵

表中每一行都應該有一列(或幾列)可以唯一標識自己。 顧客表可以使用顧客編號,而訂單表可以使用訂單 ID。僱員表可以使用僱員 ID或僱員社會安全號。

主鍵(primary key) 是一列(或一組列),其值能夠唯一標識表中每一行。沒有主鍵,更新或刪除表中特定行就極爲困難,因爲你不能保證操作只涉及相關的行。

提示: 應該總是定義主鍵
雖然並不總是需要主鍵,但多數數據庫設計者都會保證他們創建的每個表具有一個主鍵,以便於以後的數據操作和管理。

表中的任何列都可以作爲主鍵,只要它滿足以下條件:

  • 任意兩行都不具有相同的主鍵值;
  • 每一行都必須具有一個主鍵值(主鍵列不允許 NULL值);
  • 主鍵列中的值不允許修改或更新;
  • 主鍵值不能重用(如果某行從表中刪除,它的主鍵不能賦給以後的新行)。

主鍵通常定義在表的一列上,但並不是必需這麼做,也可以一起使用多個列作爲主鍵。在使用多列作爲主鍵時,上述條件必須應用到所有列,所有列值的組合必須是唯一的(但單個列的值可以不唯一)。

4.7 外鍵

外鍵是表中的一列,其值必須列在另一表的主鍵中。外鍵是保證引用完整性的極其重要部分。

外鍵有助防止意外刪除。在定義外鍵後, DBMS不允許刪除在另一個表中具有關聯行的行。例如,不能刪除關聯訂單的顧客。 刪除該顧客的唯一方法是首先刪除相關的訂單(這表示還要刪除相關的訂單項)。由於需要一系列的刪除,因而利用外鍵可以防止意外刪除數據。

五、MySQL數據庫管理系統

5.1 數據庫(Database,簡稱DB)

數據庫就是一個存放數據的倉庫,這個倉庫是按照一定的數據結構(數據結構是指數據的組織形式或數據之間的聯繫)來組織、存儲的,我們可以通過數據庫提供的多種方法來管理數據庫裏的數據。更簡單的形象理解,數據庫和我們生活中存放雜物的倉庫性質一樣,區別只是存放的東西不同。

5.2 數據表(table)

數據表是關係數據庫中一個非常重要的對象,是其它對象的基礎,也是一系列二維數組的集合,用來存儲、操作數據的邏輯結構。

根據信息的分類情況,一個數據庫中可能包含若干個數據表,每張表是由組成,記錄一條數據,數據表就增加一行,每一列是由字段名字段數據集合組成,被稱之爲字段,每一列還有自己的多個屬性,例如是否允許爲空、默認值、長度、類型、存儲編碼、註釋等。

5.3 數據庫系統有3個主要的組成部分

1.數據庫(Database System):用於存儲數據的地方。
2.數據庫管理系統(Database Management System,DBMS):用戶管理數據庫的軟件。
3.數據庫應用程序(Database Application):爲了提高數據庫系統的處理能力所使用的管理數據庫的軟件補充。

5.4 視圖

視圖是一種虛擬的表,具有和物理表相同的功能。可以對視圖進行增,改,查,操作,視圖通常是有一個表或者多個表的行或列的子集。對視圖的修改不影響基本表。它使得我們獲取數據更容易,相比多表查詢。

如下兩種場景一般會使用到視圖:

不希望訪問者獲取整個表的信息,只暴露部分字段給訪問者,所以就建一個虛表,就是視圖。
查詢的數據來源於不同的表,而查詢者希望以統一的方式查詢,這樣也可以建立一個視圖,把多個表查詢結果聯合起來,查詢者只需要直接從視圖中獲取數據,不必考慮數據來源於不同表所帶來的差異。

注意: 這個視圖是在數據庫中創建的,而不是用代碼創建的。

5.5 存儲過程(Stored Procedure)

MySQL 5.0 版本開始支持存儲過程。

存儲過程就是爲以後使用而保存的一條或多條 SQL語句。可將其視爲批文件,雖然它們的作用不僅限於批處理。存儲過程是一種在數據庫中存儲複雜程序,以便外部程序調用的一種數據庫對象。存儲過程思想上很簡單,就是數據庫 SQL 語言層面的代碼封裝與重用

優點:

  • 存儲過程可封裝,並隱藏複雜的商業邏輯。
  • 存儲過程可以回傳值,並可以接受參數。
  • 存儲過程無法使用 SELECT 指令來運行,因爲它是子程序,與查看錶,數據表或用戶定義函數不同。
  • 存儲過程可以用在數據檢驗,強制實行商業邏輯等。

缺點:

  • 存儲過程,往往定製化於特定的數據庫上,因爲支持的編程語言不同。當切換到其他廠商的數據庫系統時,需要重寫原有的存儲過程。
  • 存儲過程的性能調校與撰寫,受限於各種數據庫系統。

精彩專題分享:

mysql不同版本安裝教程

mysql5.7各版本安裝教程

mysql5.6各版本安裝教程

mysql8.0各版本安裝教程

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持神馬文庫。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章