1、在MySQL數(shù)據(jù)庫安裝時(shí)選擇過MySQL服務(wù)器隨系統(tǒng)啟動,但如果沒有選擇,也沒關(guān)系,可以在可以在Windows服務(wù)管理器啟動,具體在開始菜單搜索services.msc,
成都創(chuàng)新互聯(lián)公司于2013年成立,先為沙雅等服務(wù)建站,沙雅等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為沙雅企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
2、單擊出現(xiàn)如下圖窗口,下滑鼠標(biāo)找到MySQL57:
3、右擊后點(diǎn)擊啟動,MySQL57旁邊狀態(tài)列顯示“已啟動”字樣,說明啟動成功。如下圖:
二、登錄MySQL數(shù)據(jù)庫
4、用系統(tǒng)命令行工具登錄,點(diǎn)擊開始菜單,找到附件,點(diǎn)擊命令提示符。
5、在命令行中輸入cd加空格然后粘貼bin路徑:cdc:\ProgramFiles(x86)\MySQL\MySQLServer5.7\bin回車命令行定位到c:\ProgramFiles(x86)\MySQL\MySQLServer5.7\bin,在后面輸入mysql_hlocalhost_uroot_p(這些都是安裝時(shí)設(shè)置好的)敲回車,
6、出現(xiàn)Enterpassword:在后面輸入安裝時(shí)設(shè)置的登錄密碼,按回車后出現(xiàn)WelcometotheMySQLmonitor.說明登陸成功。如下圖:
7、用安裝時(shí)配置好的命令行工具登錄,在開始菜單,點(diǎn)擊MySQL5.7CommandLineClient或下面搜索程序框中輸入comm選擇MySQL5.7CommandLineClient啟動DOS命令窗口。如下圖:
8、在窗口Enterpassword:處輸入安裝時(shí)設(shè)置的MySQL數(shù)據(jù)庫客戶端登陸密碼,回車,如果出現(xiàn)WelcomtotheMySQLmonitor.等字眼表示登陸服務(wù)器成功,可以在閃爍光標(biāo)處輸入SQL可執(zhí)行語言:如下圖:
mysql5.7.19免安裝版怎么用
解壓縮后運(yùn)行程序開始安裝,選擇接受協(xié)議,點(diǎn)擊下一步。
選擇developer default,點(diǎn)擊”next“。
檢查是否滿足安裝需求。
點(diǎn)擊“Execute”按鈕后,可能會下載一些程序,到時(shí)你自己點(diǎn)擊安裝就行了,直到所有安裝完成就OK了。當(dāng)然你也可以選擇不下載這些環(huán)境點(diǎn)擊”next“直接安裝。
前幾天看到姜老師的舊文 用 VSCode 編譯和調(diào)試 MySQL,每個(gè) DBA 都應(yīng) get 的小技能[1] , 文末留了一個(gè)思考題,如何修改源碼,自定義版本,使得 select version() 輸出自定義內(nèi)容
調(diào)試過程參考 macOS VSCode 編譯調(diào)試 MySQL 5.7[2]
內(nèi)部 Item 對象參考 從SQL語句到MySQL內(nèi)部對象[3]
源碼面前沒有秘密,建義對 DB 感興趣的嘗試 debug 調(diào)試。本文環(huán)境為 mac + vscode + lldb
vscode 插件:
mysql 源碼:
補(bǔ)?。? MySQL = 8.0.21 需要對 cmake/mysql_version.cmake 文件打補(bǔ)丁 (沒有嚴(yán)格測試所有版本)
創(chuàng)建 cmake-build-debug 目錄,后續(xù) mysql 編譯結(jié)果,以及啟動后生成的文件都在這里
在 mysql 工程目錄下面創(chuàng)建 .vscode/settings.json 文件
內(nèi)容沒啥好說的,都是指定目錄及 boost 配置,其中 WITH_DEBUG 打開 debug 模式,會在 /tmp/debug.trace 生成 debug 信息
View - Command Palette - CMake: Configure 執(zhí)行后生成 cmake 配置
View - Command Palette - CMake: Build 編譯生成最終 mysql 相關(guān)命令
發(fā)現(xiàn)老版本編譯很麻煩,各種報(bào)錯(cuò),mysql 5.7 代碼量遠(yuǎn)超過 5.5, 只能硬著頭皮看 5.7
首先初始化 my.cnf 配置,簡單的就可以,共它均默認(rèn)
初始化數(shù)據(jù)文件,非安全模式,調(diào)試用
由于用 vscode 接管 mysql, 所以需要配置 .vscode/launch.json
然后點(diǎn)擊 run and debug mysqld
mysql 啟動,看到輸出日志無異常,此時(shí)可以用 mysql-client 連接
首先在 sql_parser.cc:5435 處打斷點(diǎn)
mysql_parse 是 sql 處理的入口,至于 tcp connection 連接先可以忽略
執(zhí)行上述 sql 自動跳轉(zhuǎn)到斷點(diǎn)處, Step Into , Step Over , Step Out 這些調(diào)試熟悉下即可
接下來分別調(diào)用主要函數(shù): mysql_execute_command , execute_sqlcom_select , handle_query , select-join-exec() , Query_result_send::send_data , Item::send , Item_string:val_str , Protocol_text::store , net_send_ok
啟動 mysql 時(shí) init_common_variables 會初始化一堆變量,其中會調(diào)用 set_server_version 生成版本信息,修改這個(gè)就可以
看好條件編譯的是哪塊,修改即可, 重新 CMake: Build 編譯再運(yùn)行
這里不做過深分析,簡單講
sql_yacc.cc 函數(shù) PTI_function_call_generic_ident_sys 解析 sql, 識別出 version() 是一個(gè)函數(shù)調(diào)用
find_native_function_builder 查找 hash 表,找到對應(yīng) version 函數(shù)注冊的單例工廠函數(shù)
mysql 啟動時(shí)調(diào)用 item_create_init 將這些函數(shù) builder 注冊到 hash 表 native_functions_hash
MySQL 代碼太龐大,5.1 大約 100w 行,5.5 130w 行,5.7 以后 330w 行,只能挑重點(diǎn)讀源碼。最近很多群里的人在背八股,沒必要,有那時(shí)間學(xué)著調(diào)試下源碼,讀讀多好
原文出處:
打開配置文件my-default.ini看到里面的basedir和datadir是沒有打開的,前面有#,路徑也是以“……”表示。
去掉basedir和datadir前面的#
basedir添加的是MySQL的解壓路徑;
datadir添加的是MySQL的data文件夾路徑。
接下來就是配置環(huán)境變量,首先先把bin的地址復(fù)制:打開MySQL解壓文件夾里面的bin文件夾,將鼠標(biāo)點(diǎn)擊到地址欄選中,復(fù)制地址(這樣做的目的是防止打字出錯(cuò),而且方便)。
把剛剛復(fù)制的bin路徑添加的Path變量值,具體方法是:打開電腦桌面:計(jì)算機(jī)—右鍵—高級系統(tǒng)設(shè)置—高級—環(huán)境變量(N)—修改Path;就是將復(fù)制的地址欄粘貼到最后。(這里注意的是不同的路徑之間用英文的“;”分開)確定,退出。
打開dos界面,具體方法是:在開始輸入cmd.exe回車。
這一步很重要,初始化MySQL,需要進(jìn)到MySQL解壓目錄下的bin文件:具體方法是:這里以F盤下的路徑為例:
F:回車
F:cd phptools\MySQL\bin(回車)
F:\phptools\MySQL\binmysqld --initialize-insecure --user=mysql(回車,這一步就是初始化)
當(dāng)出現(xiàn)Service successfully installed表示MySQL服務(wù)已經(jīng)安裝了,就差啟動了。
啟動MySQL在之前的F:\phptools\MySQL\bin輸入:net start mysql;
出現(xiàn):MySQL服務(wù)啟動成功,表示這一次配置完畢。
接下來就是開啟新版的MySQL之旅了,打開dos界面,輸入mysql -u root -p然后回車,提示輸入密碼,如果沒有密碼就回車。
查看版本。至此MySQL5.7.10安裝完畢。
方法/步驟
1
下載好后解壓發(fā)現(xiàn)沒有data文件夾,這可怎么辦,網(wǎng)上查看了很多的發(fā)方法,總是看不懂,新版原來是改了,需要初始化,下面一步一步道來。
2
新建一個(gè)data文件夾。
3
打開配置文件my-default.ini看到里面的basedir和datadir是沒有打開的,前面有#,路徑也是以“……”表示。
4
去掉basedir和datadir前面的#
basedir添加的是MySQL的解壓路徑;
datadir添加的是MySQL的data文件夾路徑。
5
接下來就是配置環(huán)境變量,首先先把bin的地址復(fù)制:打開MySQL解壓文件夾里面的bin文件夾,將鼠標(biāo)點(diǎn)擊到地址欄選中,復(fù)制地址(這樣做的目的是防止打字出錯(cuò),而且方便)。
6
把剛剛復(fù)制的bin路徑添加的Path變量值,具體方法是:打開電腦桌面:計(jì)算機(jī)—右鍵—高級系統(tǒng)設(shè)置—高級—環(huán)境變量(N)—修改Path;就是將復(fù)制的地址欄粘貼到最后。(這里注意的是不同的路徑之間用英文的“;”分開)確定,退出。
7
打開dos界面,具體方法是:在開始輸入cmd.exe回車。
8
這一步很重要,初始化MySQL,需要進(jìn)到MySQL解壓目錄下的bin文件:具體方法是:這里以F盤下的路徑為例:
F:回車
F:cd phptools\MySQL\bin(回車)
F:\phptools\MySQL\binmysqld --initialize-insecure --user=mysql(回車,這一步就是初始化)
當(dāng)出現(xiàn)Service successfully installed表示MySQL服務(wù)已經(jīng)安裝了,就差啟動了。
9
啟動MySQL在之前的F:\phptools\MySQL\bin輸入:net start mysql;
出現(xiàn):MySQL服務(wù)啟動成功,表示這一次配置完畢。
10
接下來就是開啟新版的MySQL之旅了,打開dos界面,輸入mysql -u root -p然后回車,提示輸入密碼,如果沒有密碼就回車。
11
查看版本。至此MySQL5.7.10安裝完畢。
配置安裝流程
具體安裝如下:
1、把 mysql-5.7.19-winx64.zip 壓縮文件解壓到 C:\MySQL\ 目錄下;
2、在 C:\MySQL\ 目錄下新建 my.ini 配置文件;
3、用文本編輯器或其他編輯器打開 my.ini 文件,把以下代碼復(fù)制粘貼進(jìn)去,保存退出;
#代碼開始
[Client]
#設(shè)置3306端口
port = 3306
[mysqld]
#設(shè)置3306端口
port = 3306
# 設(shè)置mysql的安裝目錄
basedir=C:\mysql
# 設(shè)置mysql數(shù)據(jù)庫的數(shù)據(jù)的存放目錄
datadir=C:\mysql\data
# 允許最大連接數(shù)
max_connections=200
# 服務(wù)端使用的字符集默認(rèn)為8比特編碼的latin1字符集
character-set-server=utf8
# 創(chuàng)建新表時(shí)將使用的默認(rèn)存儲引擎
default-storage-engine=INNODB
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysql]
# 設(shè)置mysql客戶端默認(rèn)字符集
default-character-set=utf8
#代碼結(jié)束
4、配置環(huán)境變量;
4.1、新建系統(tǒng)變量 MYSQL_HOME ,并配置變量值為 C:\mysql ;
4.2、編輯系統(tǒng)變量 Path ,將 ;%MYSQL_HOME%\bin 添加到 Path 變量值后面。
5、以管理員身份運(yùn)行命令提示符cmd(一定要用管理員身份運(yùn)行,不然權(quán)限不夠);
5.1、使用dos指令,進(jìn)入C:\mysql 目錄,運(yùn)行以下指令
mysqld --defaults-file=my.ini --initialize-insecure
mysqld --install
net start mysql
5.2、設(shè)置 mysql 的 root 密碼,運(yùn)行以下指令
mysql -u root -p
use mysql;
update user set authentication_string=password('您的密碼') where user='root';
flush privileges;
exit
至此,Mysql 5.7.19 winx64 解壓縮版配置安裝已經(jīng)完成!