標籤:執行命令 管理系統 代碼 記憶體 令行 還原 關係 order 刪除檔案
Mysql 資料庫
Mysql 資料庫:實質是一個存放和管理檔案的軟體
那麼對於MySQL來說有兩個軟體:
——伺服器軟體:
socket服務端
本地檔案操作
——用戶端軟體:
socket用戶端
發送指令
解析指令(mysql語句)
對於伺服器軟體中的socket伺服器是一直開著的,用戶端隨時需要串連,還有建立檔案、刪除檔案、等操作。
對於用戶端軟體中的socket用戶端,我們得需要發送指令去命令socket服務端檔案進行操作。
mysql 要掌握的技能(內容):
——安裝 伺服器(mysqld)和用戶端(mysql)
——串連
——學習SOL語句規則;命令服務端做任何的操作
資料庫定義:存放資料的倉庫。 資料庫是長期存放在電腦中、有組織、可共用的資料。
資料庫中的資料按一定的資料模型組織、描述和儲存,具有較小的冗餘度、較高的資料獨立性、可以進行資料共用
資料庫管理系統(DataBase Management System):
資料庫管理軟體分類
分兩大類: 關係型:如sqllite,db2,oracle,access,sql server,MySQL,注意:sql語句通用 非關係型:mongodb,redis,memcache可以簡單的理解為: 關係型資料庫需要有表結構 非關係型資料庫是key-value儲存的,沒有表結構
非關係型資料庫是以鍵對應值的方式儲存的。
資料庫伺服器、資料管理系統。資料庫。。表與記錄的關係:
記錄:1 xxx 324245234 22(多個欄位的資訊組成一條記錄,即檔案中的一行內容)
表:student,scholl,class_list(即檔案)
資料庫:oldboy_stu(即檔案夾)
資料庫管理系統:如mysql(是一個軟體)
資料庫伺服器:一台電腦(對記憶體要求比較高)
總結:
資料庫伺服器-:運行資料庫管理軟體
資料庫管理軟體:管理-資料庫
資料庫:即檔案夾,用來組織檔案/表
表:即檔案,用來存放多行內容/多條記錄
Mysql 安裝於基本管理:
添加環境變數:
【右鍵電腦】--》【屬性】--》【進階系統設定】--》【進階】--》【環境變數】--》【在第二個內容框中找到 變數名為Path 的一行,雙擊】 --> 【將MySQL的bin目錄路徑追加到變值值中,用 ; 分割】
5.初始化
| 1 |
mysqld --initialize-insecure |
6.啟動mysql服務
mysqld #啟動MySQL服務
7.啟動mysql用戶端並串連mysql服務端(新開一個cmd視窗)
mysql -u root -p # 串連MySQL伺服器
上一步解決了一些問題,但不夠徹底,因為在執行【mysqd】啟動MySQL伺服器時,當前終端會被hang住,那麼做一下設定即可解決此問題,即將MySQL服務製作成windows服務
注意:--install前,必須用mysql啟動命令的絕對路徑# 製作MySQL的Windows服務,在終端執行此命令:"c:\mysql-5.6.40-winx64\bin\mysqld" --install# 移除MySQL的Windows服務,在終端執行此命令:"c:\mysql-5.7.16-winx64\bin\mysqld" --remove註冊成服務之後,以後再啟動和關閉MySQL服務時,僅需執行如下命令:# 啟動MySQL服務net start mysql# 關閉MySQL服務net stop mysql
windows下登入設定密碼
開啟終端,輸入mysql
輸入mysql提供的函數:select user(); # 查看當前登入的帳號
當前登入的預設帳號為[email protected]
如果想切到root帳號登入
執行命令:
mysql -uroot -p
再查看目前使用者:
select user();
管理員為root(擁有最高許可權,管理員帳號),密碼為空白,以無密碼的方式登入了管理員帳號,是非常危險的一件事情,所以要為管理員帳號設定密碼
設定管理員root帳號密碼為123
C:\Users\mjj>mysqladmin -uroot -p password "123" #設定初始密碼 由於原密碼為空白,因此-p可以不用
ps:??不用管它。翻譯為:在命令列介面使用密碼不安全,暴露在終端當中。
然後再登入帳號,不輸入密碼則會出現如下結果:
再次執行如下操作:
再查看一下當前登入的帳號:
如果想將原始密碼123,設定新密碼為456
C:\Users\mjj>mysqladmin -uroot -p"123" password "456" #修改mysql密碼,因為已經有密碼了,所以必須輸入原密碼才能設定新密碼
依次執行如下操作:
mysql -uroot -p456select user();
密碼忘記——破解密碼
跳過授權方式,直接登入!!
0.以管理員身份開啟cmd
2.停掉mysql服務端
C:\WINDOWS\system32>net stop mysqlMySQL 服務正在停止.MySQL 服務已成功停止。
3.執行如下命令跳過授權表
#跳過授權表C:\WINDOWS\system32>mysqld --skip-grant-tables2018-06-09 17:12:38 0 [Warning] Insecure configuration for --secure-file-priv: Current value does not restrict location of generated files. Consider setting it to a valid, non-empty path.2018-06-09 17:12:38 0 [Note] mysqld (mysqld 5.6.40) starting as process 6052 ...4.
4.再次查看
5. 現在可以任意的更改密碼,執行如下命令
update mysql.user set authentication_string =password(‘‘) where User=‘root‘;
6.重新整理許可權,執行命令
flush privileges;
7.退出mysql。執行命令:exit,
8.讓使用者去載入許可權,以管理員身份進入cmd,查看當前mysql進程
| 1 |
tasklist |findstr mysql #查看當前mysql的進程 |
9.殺死當前的進程,執行如下命令
taskkill /F /PID 6052 # 殺死當前的進程pid
10.再次執行如下操作,還原
統一字元編碼
進入mysql用戶端,執行\s
為了統一字元編碼,請執行如下操作:
(1)my.ini檔案是mysql的設定檔,
在C:\mysql-5.6.40-winx64檔案下建立my.ini檔案
(2)將如下代碼拷貝儲存。
#mysql5.5以上:修改方式為 [mysqld] character-set-server=utf8 collation-server=utf8_general_ci [client] default-character-set=utf8 [mysql] default-character-set=utf8
(3)以管理員身份重啟服務,執行如下命令
C:\Windows\system32>net stop MySQLMySQL 服務正在停止..MySQL 服務已成功停止。C:\Windows\system32>net start MySQLMySQL 服務正在啟動 .MySQL 服務已經啟動成功。
(4)在cmd中輸入mysql進入mysql環境,執行\s,顯示如下資訊,表示成功
註: \c 表示上一行代碼不執行;
內容補充:
進程相關:
——查看進程:
tasklist | findstr mysql
——關閉進程:
taskkill /F /PID 進程號
mysql 資料庫第一天