您好,登錄后才能下訂單哦!
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) 是一列(或一組列),其值能夠唯一標識表中每一行。沒有主鍵,更新或刪除表中特定行就極為困難,因為你不能保證操作只涉及相關的行。
提示: 應該總是定義主鍵
雖然并不總是需要主鍵,但多數數據庫設計者都會保證他們創建的每個表具有一個主鍵,以便于以后的數據操作和管理。
表中的任何列都可以作為主鍵,只要它滿足以下條件:
主鍵通常定義在表的一列上,但并不是必需這么做,也可以一起使用多個列作為主鍵。在使用多列作為主鍵時,上述條件必須應用到所有列,所有列值的組合必須是唯一的(但單個列的值可以不唯一)。
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 語言層面的代碼封裝與重用。
優點:
缺點:
精彩專題分享:
mysql不同版本安裝教程
mysql5.7各版本安裝教程
mysql5.6各版本安裝教程
mysql8.0各版本安裝教程
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。