精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

聊聊 MySQL8.0 源碼編譯和 Clion 調試

數據庫 MySQL
如果Clion的CMake執行成功后,就會出現對應的 Run / Debug Configurations 選項,里邊會有名稱為mysqld的選項,它就是 MySQL Server 啟動的選項。可以先用該選項執行 MySQL 數據目錄的初始化操作,生成對應的配置文件和用戶名密碼。

?操作系統環境

我把個人的臺式機重裝了 Ubuntu 20.04 ,內核版本是 5.13.0-44-generic,內存16G,磁盤240G,有關依賴的編譯工具版本如下所示。

圖片

相關的安裝命令是從 PolarDB-通過編譯源碼安裝部署文檔上來的,專門適配于 Ubuntu 20版本,Centos的版本可以具體去它文檔中查看:

安裝GCC7
apt install -y gcc-7 g++-7
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 60 \
--slave /usr/bin/g++ g++ /usr/bin/g++-7
update-alternatives --config gcc
gcc --version
g++ --version

# 安裝依賴
apt install make automake cmake git bison libaio-dev libncurses-dev libsasl2-dev libldap2-dev libssl-dev pkg-config

MySQL 源碼下載

我們選擇最新的 8.0.28版本,可以去 https://dev.mysql.com/downloads/mysql/ 直接下載帶 Boost 第三方庫依賴的源碼。

圖片

Boost 是一個功能強大、構造精巧、跨平臺、開源并且完全免費的 C++ 程序庫,可以認為是半個C++標準庫。MySQL 的代碼依賴 Boost庫,所以直接下載一個攜帶Boost庫的源碼比較省心,不需要再去下載對應的Boost庫。

編譯命令

我們首先需要使用 cmake 進行編譯,可以直接使用命令行,也可以用 Clion 開發后,配置對應的cmake編譯配置。

圖片

其中,有關 CMake Options 的部分參數如下所示:

-DWITH_BOOST=~/work/c++/mysql-8.0.28/boost -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/home/homer/build -DMYSQL_DATADIR=/home/homer/build/data -DSYSCONFDIR=/home/homer/build -DMYSQL_UNIX_ADDR=/home/homer/build/data/mysql.sock -DMYSQL_MAINTAINER_MODE=false

其中比較重要的有:

  • DWITH_BOOST: 指定 boost 路徑,可以直接指向源碼文件夾下的boost文件夾;
  • DCMAKE_BUILD_TYPE: 表示是debug,方便后續代碼調試;
  • DCMAKE_INSTALL_PREFIX:  表示編譯狀態的路徑,選擇源碼文件夾之外的一個自建的build文件夾
  • DMYSQL_DATADIR:表示MySQL默認的數據目錄,選擇build文件夾下的data文件

然后執行命令進行編譯,大概會花費數分鐘的時間,并且可能會出現各類錯誤和問題。問題和錯誤會在本文后邊進行記錄。

Clion 調試

如果Clion的CMake執行成功后,就會出現對應的 Run / Debug Configurations 選項,里邊會有名稱為mysqld的選項,它就是 MySQL Server 啟動的選項。可以先用該選項執行 MySQL 數據目錄的初始化操作,生成對應的配置文件和用戶名密碼。然后再使用該選項來啟動 MySQL Server。兩個操作對應的參數不同。

圖片

第一步初始化數據目錄時,也需要先創建對應的用戶。

# 創建 MySQL 用戶組和 MySQL 用戶
groupadd mysql
useradd -r -g mysql -s /bin/false mysql

然后使用 clion 的 mysqld 執行選項,輸入的 Program arguments 如下所示:

--basedir=/home/homer/build --datadir=/home/homer/build/data --lower_case_table_names=0 --initialize-insecure --user=mysql

其中 --initialize-insecure 表示非安全的初始化,可以設置無密碼的用戶。然后需要給對應的文件夾添加讀寫和執行權限。

chmod -R 777 /home/homer/build/data

初始化后,就可以繼續使用 clion 的 mysqld 執行選項來啟動 MySQL了。輸入的 Program arguments 如下所示:

--basedir=/home/homer/build --datadir=/home/homer/build/data --lower_case_table_names=0 --user=mysql

圖片

然后我們可以在 /home/homer/build/bin 目錄下執行 ./mysql -uroot -h127.0.0.1 -P3306 -p來使用客戶端連接 MySQL Server。登錄時無需密碼,直接回車。

圖片

然后就可以看到我們在clion中設置斷點的代碼邏輯被攔截,下面我們就可以進行調試和代碼閱讀了。

問題記錄

在整個過程中,特別是編譯階段遇到了很多問題,這里也簡單記錄一下,相信不同的同學進行這個過程中都會遇到不同的問題,大家耐心解決。

1.default.cfg不存在

編譯時會有如下報錯:

CMake Error: File /home/homer/work/c++/mysql-8.0.28/router/src/harness/tests/data/logger.d/default.cfg does not exist.
CMake Error at router/cmake/testing.cmake:211 (CONFIGURE_FILE):

可以在 cmake配置文件中找到如下片段,直接刪除。

CONFIGURE_TEST_FILE_TEMPLATES(${CMAKE_CURRENT_SOURCE_DIR}/data
"tests-good-1.cfg.in;tests-good-2.cfg.in;tests-start-1.cfg.in")
SET(TEST_FILES
logger.cfg
magic-alt.cfg
tests-bad-1.cfg
tests-bad-2.cfg
tests-bad-3.cfg
)

2.編譯警告作為錯誤處理

在編譯過程中,發現編譯器會把warning當做error處理,導致整個編譯過程失敗。具體報錯如下所示。

cc1plus: all warnings being treated as errors

經過搜索最終在 https://dev.mysql.com/doc/mysql-sourcebuild-excerpt/8.0/en/compilation-problems.html 文檔中找到了對應的解決版本,需要將DMYSQL_MAINTAINER_MODE設置為false,否則就會導致編譯器將warning作為error處理。

嵌入可以理解為一種組合或者代理模式的自動語法糖。

3.編譯cache

編譯異常后,需要刪除對應的 cmake cache 后再次進行編譯,否則每次都會讀取緩存進行相同的報錯。

責任編輯:武曉燕 來源: 程序員歷小冰
相關推薦

2023-03-29 08:13:48

MySQL檢索成本

2013-05-28 10:52:07

Android開發移動開發移動應用

2022-10-10 08:01:08

MySQL字典表

2021-06-03 19:13:06

MySQLJson數據

2018-11-28 15:00:58

MySQLGROUP BY索引

2023-01-02 08:20:14

MySQL數據庫

2017-03-27 15:15:43

Hive源碼編譯

2011-03-08 10:18:18

Visual StudMongoDB

2022-08-29 08:01:01

MySQL配置Windows

2021-10-17 19:52:40

Python:源碼編譯器

2021-10-19 10:26:31

MySQL.MySQLJSON

2021-02-02 21:50:31

MySQL 8.0ExcelMySQL 5.7

2021-05-31 19:50:04

MySQL自增鎖InnoDB

2023-03-28 07:12:21

開源IoT平臺源碼

2024-03-25 07:30:03

MySQL數據庫SQL日志

2021-09-08 06:51:53

CountDownLa閉鎖源碼

2024-08-05 10:13:59

MySQL大數據優化

2025-02-14 10:03:40

2010-06-02 13:05:14

Sendmail 安裝

2020-12-31 05:35:53

MySQL 8.0MySQL 5.7JSON
點贊
收藏

51CTO技術棧公眾號

日韩一区中文字幕| 国产精品多人| 91精品国产综合久久久蜜臀粉嫩 | 天天射—综合中文网| 91麻豆精品国产91久久久资源速度 | 仙踪林久久久久久久999| 日韩美女一区二区三区四区| www.avtt| 蜜桃视频在线入口www| 久久字幕精品一区| 久久亚洲精品视频| 中文字字幕码一二三区| 婷婷久久免费视频| 精品高清一区二区三区| 一区二区精品国产| 色窝窝无码一区二区三区成人网站| 免播放器亚洲| 欧美精品videofree1080p| 欧美色图亚洲激情| 久久精品一级| 色噜噜偷拍精品综合在线| 免费cad大片在线观看| 国产福利在线看| 成人免费视频视频| 成人免费看吃奶视频网站| 午夜影院在线看| 欧美黄色免费| 最近2019中文字幕大全第二页| 亚洲午夜久久久久久久久| 欧美一级做一级爱a做片性| 欧美日韩国产精品一区| 777久久精品一区二区三区无码 | 免费网站在线观看黄| 国产欧美一区二区三区精品酒店| 亚洲卡通动漫在线| 亚洲一区三区| av网页在线| 国产亚洲人成网站| 久久国产主播精品| 高潮一区二区三区乱码| 国产乱一区二区| 成人精品在线观看| 中文字幕永久在线观看| 久久精品一区二区国产| 7m精品福利视频导航| 国产真实的和子乱拍在线观看| 亚洲精品成人无限看| 色哟哟网站入口亚洲精品| 免费看黄色的视频| 美女毛片一区二区三区四区最新中文字幕亚洲| 欧美精品一区二区久久久| 污视频在线观看免费网站| 4438五月综合| 91精品国产品国语在线不卡| 91香蕉国产线在线观看| 国产精品高清一区二区 | 人成网站在线观看| 成人网页在线观看| 成人羞羞视频免费| 成人午夜免费福利| 成人av午夜电影| 激情欧美一区二区三区中文字幕| 少妇高潮一区二区三区69| 不卡视频免费播放| 欧美成人在线免费观看| 免费在线视频一级不卡| 久久九九影视网| 色播五月综合| 1024国产在线| 一区二区理论电影在线观看| 97中文字幕在线| www.51av欧美视频| 色婷婷久久综合| 亚洲欧美自拍另类日韩| 亚洲综合资源| 精品粉嫩aⅴ一区二区三区四区| 成年人的黄色片| 国产一区二区三区天码| 在线观看成人黄色| 一级片一级片一级片| 中文字幕一区二区精品区| 欧美激情中文网| 国产一级一级国产| 麻豆精品一区二区| av色综合网| 欧美白人做受xxxx视频| 国产精品不卡在线| 免费看毛片的网址| 日本不卡免费高清视频在线| 欧美三级中文字幕在线观看| 国产亚洲色婷婷久久| 欧美大片网址| 精品国产视频在线| 久久久久久久久久影院| 麻豆国产一区二区| 国产传媒欧美日韩| www.91在线| 亚洲电影一区二区三区| 四季av一区二区| 日本精品在线观看| 亚洲视频第一页| 免费在线视频一区二区| 日韩制服丝袜av| 97超碰最新| yiren22亚洲综合伊人22| 一区二区三区久久久| 妞干网在线免费视频| 警花av一区二区三区| 亚洲人成电影网站色…| 欧美日韩在线观看成人| 日韩专区中文字幕一区二区| 91久热免费在线视频| 欧洲视频在线免费观看| 亚洲精品ww久久久久久p站| 久久人妻精品白浆国产| 一区二区三区视频播放| 中文字幕亚洲国产| 婷婷激情五月网| 国产99久久久精品| 亚洲砖区区免费| 最新欧美色图| 亚洲电影免费观看| 欧美又粗又大又长| 精彩视频一区二区三区| 日韩激情视频| 亚洲精品成人图区| 精品福利二区三区| 九九热精品免费视频| 精品中文av资源站在线观看| 日韩福利影院| 国产精品一区二区av影院萌芽| 亚洲国产免费av| 久久久久久久久久久网| 精品综合免费视频观看| 日韩免费av电影| 另类图片综合电影| 亚洲精品久久久久中文字幕二区| 激情综合网五月天| 国产精品一区二区黑丝| 精品少妇人妻av一区二区| 成人免费黄色| 中文字幕少妇一区二区三区| 日本视频www色| 国产日韩欧美a| 国产第一页视频| 国产成人手机高清在线观看网站| 91精品国产成人| 先锋av资源站| 精品国产福利视频| 玖玖爱在线精品视频| 亚洲黄色av| 精品一区久久久| 国产精品粉嫩| 中文字幕欧美日韩va免费视频| 99re热视频| 国产精品美女www爽爽爽| 一道本在线免费视频| 色喇叭免费久久综合| 成人免费午夜电影| 麻豆视频免费在线观看| 日韩一区二区在线看| 免费一级a毛片夜夜看| 国产成人精品免费网站| 青草青青在线视频| 亚洲美女久久| 国产精品免费视频xxxx| 久草中文在线观看| 欧美mv和日韩mv的网站| 日本最新中文字幕| 国产欧美综合色| 国产无色aaa| 国产精品va| 久久狠狠久久综合桃花| julia一区二区三区中文字幕| 日韩最新在线视频| 亚洲免费视频网| 一本久久精品一区二区| 精品香蕉在线观看视频一| 9999热视频| 成人小视频免费观看| 岳毛多又紧做起爽| 日韩中文在线电影| 91久久精品一区二区别| 国产理论在线| 神马久久久久久| 蜜臀av午夜精品| 色视频成人在线观看免| 国产精品日韩欧美一区二区三区| 欧美xxxx做受欧美88bbw| 亚洲激情视频在线| 日本三级一区二区三区| 亚洲女爱视频在线| 久久久久国产精品区片区无码| 日韩av一级片| 国产真人做爰毛片视频直播| 国产成人影院| 91精品黄色| 主播大秀视频在线观看一区二区| 欧美日本中文字幕| 免费在线国产| 精品欧美乱码久久久久久| 在线观看污污网站| 樱花草国产18久久久久| 中文字幕在线观看免费高清| 粉嫩欧美一区二区三区高清影视 | www.youjizz.com在线| 自拍偷拍亚洲在线| 日本在线一二三| 日韩精品一区二区三区四区| 天天干天天色综合| 一区二区三区四区中文字幕| 亚洲v国产v欧美v久久久久久| 国产成a人无v码亚洲福利| www.涩涩涩| 美女视频一区免费观看| 亚洲精品久久久久久久蜜桃臀| 色欧美自拍视频| 日本不卡免费新一二三区| 国产精品美女在线观看直播| 成人激情免费在线| 日韩和的一区二在线| 26uuu另类亚洲欧美日本一| av免费网站在线| 中文字幕在线视频日韩| 国产在线中文字幕| 日韩激情视频在线播放| 高潮毛片7777777毛片| 欧美成人精品福利| 一区二区三区免费在线视频| 欧美性大战久久久久久久| 久久久久久91亚洲精品中文字幕| 午夜精品免费在线| 国产精品18p| 一区二区三区四区在线免费观看| 中文国语毛片高清视频| 国产精品乱码久久久久久| 成年人在线免费看片| 五月婷婷欧美激情| 欧美韩国亚洲| 午夜精品在线视频| 色爱综合区网| 久久精品人人做人人综合| 久久久久国产免费| 狠狠色丁香婷婷综合久久片| www.xxx亚洲| 久久久水蜜桃av免费网站| 又粗又黑又大的吊av| 日韩视频久久| 国产69精品久久久久久久| 亚洲二区精品| 波多野结衣乳巨码无在线| 一本久久综合| 妺妺窝人体色www在线小说| 国产欧美一区二区色老头 | 亚洲天堂一区二区三区四区| 伊人久久大香线蕉午夜av| 欧美高清视频手机在在线| 亚洲午夜精品久久久中文影院av| 欧美黄色大片在线观看| 中文字幕一区二区三区有限公司| 亚洲精彩视频| 超碰超碰超碰超碰超碰| 黄色精品免费| 欧美一区二区三区爽大粗免费| 亚洲永久网站| 奇米影音第四色| 激情丁香综合五月| 好吊操视频这里只有精品| 99这里只有久久精品视频| 日韩乱码人妻无码中文字幕久久| 国产三区在线成人av| 天天鲁一鲁摸一摸爽一爽| 亚洲永久免费av| 美女又爽又黄免费视频| 欧美日韩一二区| www.天天干.com| 精品中文字幕久久久久久| 福利视频在线导航| 久久久精品一区二区三区| 精品国产99久久久久久| 久久久免费电影| 一区二区视频免费完整版观看| 成人黄色影片在线| 国产精品玖玖玖在线资源| 免费看成人午夜电影| 999久久久91| 男女超爽视频免费播放| 日韩av一级片| 亚洲精品国产成人av在线| 国产亚洲成aⅴ人片在线观看| 2025国产精品自拍| 五月天网站亚洲| 亚洲天堂网在线视频| 精品成人佐山爱一区二区| 第三区美女视频在线| 久久91精品国产| 日韩在线短视频| 成人在线看片| 日韩电影免费在线观看| 久久视频这里有精品| 韩国一区二区三区| 日本黄色特级片| 一卡二卡欧美日韩| www.日韩一区| 亚洲成**性毛茸茸| 男人资源在线播放| 日韩女在线观看| 草草视频在线一区二区| 亚洲精品一区二区三区蜜桃久| 99热精品在线观看| 国产永久免费网站| 久久久久国产免费免费| 久久婷婷综合国产| 欧美高清视频一二三区 | 亚洲人成小说网站色在线| 欧产日产国产69| 精品国产乱码久久久久久免费| 香蕉视频免费在线播放| 欧美野外猛男的大粗鳮| 亚洲精品一区在线| 一区二区三区在线视频111| 亚洲影音先锋| 精品人妻伦一二三区久| 亚洲激情在线激情| 国产又大又黑又粗| 中文字幕欧美视频在线| 日日夜夜天天综合| 麻豆av一区二区| 亚洲三级色网| 美女久久久久久久久| 亚洲激情在线激情| www.黄色片| 久精品免费视频| 天堂va在线高清一区| 中文字幕乱码免费| 激情文学综合丁香| av最新在线观看| 欧美日韩亚洲国产综合| h视频在线观看免费| 国产精品r级在线| 国产99精品一区| 男人的天堂日韩| 欧美激情在线免费观看| 久久久久在线视频| 亚洲欧美www| 亚洲成av在线| 亚洲精品永久www嫩草| 琪琪一区二区三区| 国产wwwwxxxx| 3d成人动漫网站| 午夜影院免费在线| 国产精品乱码一区二区三区| 亚洲激情社区| 无码人妻精品一区二区三应用大全| 午夜精品福利一区二区蜜股av| 午夜18视频在线观看| 欧美在线性视频| 国产精品密蕾丝视频下载| 亚洲 中文字幕 日韩 无码| 中文字幕va一区二区三区| 在线观看国产黄| 另类色图亚洲色图| 99re6热只有精品免费观看| 免费看黄在线看| 久久精品视频一区二区| 伊人网中文字幕| 欧美猛交ⅹxxx乱大交视频| 盗摄系列偷拍视频精品tp| 欧美牲交a欧美牲交| 国产午夜精品福利| 国产精品特级毛片一区二区三区| 欧美成人精品一区| 久久亚州av| 一区二区三区入口| 亚洲免费在线播放| 日本精品一二区| 国产精品96久久久久久| 久久麻豆精品| 韩国三级hd两男一女| 91久久精品一区二区三| 老司机午夜在线视频| 国产伦精品一区二区三区四区免费 | 亚洲激情在线观看视频| 亚洲婷婷综合色高清在线| 日韩一级中文字幕| 国产精品美女视频网站| 欧美日本精品| 四虎国产精品成人免费入口| 91麻豆精品国产自产在线| а√天堂资源官网在线资源| 日韩精品在在线一区二区中文| 久草这里只有精品视频| 国产成人无码一区二区三区在线| 最好看的2019的中文字幕视频| 91麻豆精品激情在线观看最新| 日韩免费毛片视频| 尤物视频一区二区| 第九色区av在线| 精品欧美国产| 国产一区二区三区免费观看|