本文主要講解如何安裝mysql-5.7.18數據庫:
將綠色版安裝包mysql-5.7.18-winx64解壓后目錄中內容如下圖,該例是安裝在D盤根目錄。
在mysql安裝目錄中新建my.ini文件,文件內容及各配置項內容如下圖,需要先將配置項【skip-grant-tables】打開,用于跳過權限驗證,以便于安裝后的初次登錄。
[client]
#設置mysql客戶端連接服務端時默認使用的端口
port=3306
[mysql]
#設置mysql客戶端默認字符集
default-character-set=utf8mb4
[mysqld]
#設置mysql的安裝目錄
basedir=D:\mysql-5.7.18-winx64
#設置mysql的數據目錄
datadir=D:\mysql-5.7.18-winx64\data
#允許最大連接數
max_connections=200
#允許連接失敗的次數,意在防止數據庫被攻擊
max_connect_errors=10
#服務端使用的字符集
character_set_server=utf8mb4
#NO_ENGINE_SUBSTITUTION意即允許在建表時指定存儲引擎,NO_AUTO_CREATE_USER意即當創建用戶時不自動創建允許訪問所有數據庫的權限
sql_mode=NO_ENGINE_SUBSTITUTION,NO_AUTO_CREATE_USER
#開啟查詢緩存
explicit_defaults_for_timestamp=true
#跳過權限驗證,啟用該參數后,任何賬號和任何密碼都可以登錄MySQL數據庫。
skip-grant-tables
#不記錄binlog
skip-log-bin
用管理員權限打開cmd命令窗口,進入mysql安裝目錄的bin目錄下,如下圖,
然后執行命令:mysqld --initialize,
此時會發現mysql安裝目錄下已經出現了data文件夾。
data目錄內容如下,
然后,執行命令:mysqld install,如果執行成功,會提示:Service successfully ingtalled,如下圖。
執行命令:net start mysql,用以啟動mysql服務,如下圖,提示服務已經啟動,說明啟動成功。注意:執行該命令之前要先將my.ini文件中的配置項【skip-grant-tables】打開,用于跳過權限驗證,否則啟動mysql服務會失敗。
?可以直接打開服務界面,刷新一下,如下圖,可以看到mysql服務已經出現了,并且顯示已啟動。
配置系統環境變量,將mysql安裝路徑及其下的bin目錄路徑都配置到Pah變量中,添加到Pah變量中末尾即可,每一項結尾加上英文分號,如下圖。
輸入以下命令:mysql -u root -p,用以登錄mysql設置root密碼,如下圖,會提示“Enter password”,意即輸入密碼。
由于之前在my.ini中已經打開了【skip-grant-tables】配置項跳過權限驗證,因此這里不需要輸入密碼,或者也可以輸入任何內容,然后直接敲Enter鍵,就可以登錄mysql,進入mysql命令行,登錄成功后會提示下圖所示信息。
執行以下sql語句:
update MySQL.user set authentication_string=password('88888888') where user='root';
用以設置root用戶的密碼,注意,結尾要帶分號,sql語句中所有的符號必須是英文的,包括引號、括號、分號等,如下圖,屏蔽了sql語句的密碼部分,執行成功后,會提示一行受影響。
進入my.ini文件,關閉【skip-grant-tables】配置項,在該配置項前面加上“#”即可,
然后在命令行中執行【exit】命令用以退出mysql命令行,再執行【net stop mysql】命令停止mysql服務,然后再執行【net start mysql】命令啟動服務,如下圖,意即重啟服務。
然后,再執行【mysql -u root -p】命令,回車后輸入剛剛設置的root用戶密碼,登錄mysql,因為之前已經關閉了my.ini文件中的【skip-grant-tables】配置項,并重啟了mysql服務,即開啟了權限驗證,所以此時登錄需要輸入正確的密碼。
進入mysql命令行之后,執行以下sql語句:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '88888888' WITH GRANT OPTION;
語句解釋:
GRANT ALL PRIVILEGES: 表示授予所有權限,
ON *.*: 授予的權限適用于所有數據庫和表,
TO 'root'@'%': 授予權限給指定的用戶和主機,其中%表示任何主機都可連接,
IDENTIFIED BY '88888888': 用戶密碼,
WITH GRANT OPTION: 允許用戶將其獲得的權限再授予其他用戶。
該語句意即授予root用戶所有數據庫和所有表的所有權限。
執行該語句之后,發現報錯如下圖,提示要修改root用戶的密碼。
那就執行以下命令:
set password for 'root'@'localhost' = password('666666');
用以修改root用戶的密碼,執行成功后會提示下圖所示信息。
然后再重新執行對root用戶的授權語句,注意語句中的IDENTIFIED BY后面的密碼要填寫正確,執行成功后會提示下圖所示信息。
至此,mysql數據庫已安裝完成。