返回頂部
關(guān)閉軟件導(dǎo)航
位置:首頁(yè) > 資訊 > 其他>MySQL 8.0.4 RC使用 auth_socket用戶要小心

  早在2015年11月,就有報(bào)告使用sha256_password進(jìn)行auth_socket身份驗(yàn)證失敗。這防止在SHA256認(rèn)證之后用auth_socket插件識(shí)別的用戶進(jìn)行缺省認(rèn)證方法mysql文章入庫(kù)軟件。在MySQL 8.0.4 RC中,default_authentication_plugin被更改為caching_sha2_password,不知道他們是否解決了這個(gè)bug。

  測(cè)試的源代碼是從dev.mysql.com下載的,并使用發(fā)布選項(xiàng)進(jìn)行編譯。 一些選項(xiàng)被禁用,以減少構(gòu)建時(shí)間,以及設(shè)置路徑前綴,并確保使用本地的OpenSSL庫(kù)::

  version="$(basename $(pwd))";

  prefix="/home/ceri/opt/mysql/${version}";

  cmake . -DBUILD_CONFIG=mysql_release \

mysql文章入庫(kù)軟件

  -DCMAKE_INSTALL_PREFIX:PATH="${prefix}" \

  -DMYSQL_DATADIR:PATH="${prefix}/data" \

  -DWITH_SSL:STRING=system \

  -DWITH_ARCHIVE_STORAGE_ENGINE:BOOL=OFF \

  -DWITH_EMBEDDED_SERVER:BOOL=OFF \

  -DWITH_EXTRA_CHARSETS:STRING="" \

  -DWITH_FEDERATED_STORAGE_ENGINE:BOOL=OFF \

  -DWITH_BLACKHOLE_STORAGE_ENGINE:BOOL=OFF \

  -DWITH_BOOST="./$(find boost/ -maxdepth 1 -type d -not -name boost)"

  在完成構(gòu)建和構(gòu)建測(cè)試之后,MySQL Sandbox用來(lái)創(chuàng)建一個(gè)測(cè)試實(shí)例,使用low_level_make_sandbox命令來(lái)獲得一些額外的控制。之后,有必要恢復(fù)default_authentication_pluginmysql文件入庫(kù)工具,因?yàn)樗诎惭b過(guò)程中更改為mysql_native_password:

  $ low_level_make_sandbox -d mysql-8.0.4-rc --datadir_from=script \

  -b ~/opt/mysql/mysql-8.0.4-rc -i 8.0 -P 20804

  $ sed -Ei 's/^(default_authentication_plugin=mysql_native_password)/#\1/' my.sandbox.cnf

  在啟動(dòng)實(shí)例之后,我創(chuàng)建了快速測(cè)試用例。這將安裝auth_socket插件并創(chuàng)建一個(gè)用戶來(lái)使用它來(lái)標(biāo)識(shí)自己:

  mysql [localhost] {root} ((none)) > show global variables like 'default_authentication_plugin';

  +-------------------------------+-----------------------+

  | Variable_name                | Value                |

  +-------------------------------+-----------------------+

  | default_authentication_plugin | caching_sha2_password |

  +-------------------------------+-----------------------+

  1 row in set (0.00 sec)

  mysql [localhost] {root} ((none)) > install plugin auth_socket soname 'auth_socket.so';

  Query OK, 0 rows affected (0.02 sec)

  mysql [localhost] {root} ((none)) > create user ceri@localhost identified with auth_socket;

  Query OK, 0 rows affected (0.04 sec)

  mysql [localhost] {root} ((none)) > grant all on *.* to ceri@localhost;

  Query OK, 0 rows affected (0.03 sec)

  不幸的是,當(dāng)我試圖通過(guò)這個(gè)新用戶連接時(shí),一個(gè)熟悉的結(jié)果——盡管有趣的是,一個(gè)新的錯(cuò)誤消息!

  $ ./use -uceri

  ERROR 2000 (HY000): Unknown MySQL error

  通過(guò)使用5.7客戶機(jī)(一個(gè)握手錯(cuò)誤),我們可以看到預(yù)期的錯(cuò)誤消息:

  $ ~/opt/mysql/mysql_5.7.20/bin/mysql --defaults-file=./my.sandbox.cnf -uceri

  ERROR 2012 (HY000): Error in server handshake

  雖然在MySQL 8.0.4 RC中有許多重大的改進(jìn)和新特性,但是使用auth_socket插件的任何系統(tǒng)都需要確保它們強(qiáng)制使用default_authentication_plugin=mysql_native_password——至少現(xiàn)在是這樣mysql文章入庫(kù)軟件 。

如果您覺(jué)得 MySQL 8.0.4 RC使用 auth_socket用戶要小心 這篇文章對(duì)您有用,請(qǐng)分享給您的好友,謝謝
文章地址:http://m.meyanliao.com/article/other/MySQLRCsyauth_socketyhyxx.html
解放雙手無(wú)盡可能,有問(wèn)題添加天線貓微信
主站蜘蛛池模板: 天堂Av无码Av一区二区三区| 久久久久亚洲AV成人无码| 亚洲精品无码不卡在线播放| 久久久久av无码免费网| 热の无码热の有码热の综合| 国产精品无码午夜福利| 国外AV无码精品国产精品| 无码人妻少妇色欲AV一区二区| 久久亚洲精品无码gv| 无码毛片视频一区二区本码 | 性无码专区一色吊丝中文字幕| 中文字幕无码第1页| 久久精品日韩av无码| 无码国产伦一区二区三区视频| 国产AV无码专区亚洲AV琪琪 | 亚洲精品无码专区在线播放| 国产午夜鲁丝无码拍拍| 国产av无码久久精品| 毛片免费全部播放无码| 国产亚洲人成无码网在线观看| 无码国模国产在线观看| 男人av无码天堂| 亚洲一区二区三区无码国产 | 亚洲欧洲无码一区二区三区| 亚洲中文字幕无码爆乳av中文| 亚洲a无码综合a国产av中文 | 97人妻无码一区二区精品免费| 国产成人无码精品久久久性色| 无码熟熟妇丰满人妻啪啪软件| 无码人妻一区二区三区一| 少妇人妻无码精品视频| 久久亚洲精品AB无码播放| 亚洲欧洲日产国码无码网站| 少妇无码太爽了在线播放| 久久亚洲精品无码播放| 日本爆乳j罩杯无码视频| 东京热av人妻无码专区| 亚洲av中文无码乱人伦在线咪咕| 国产啪亚洲国产精品无码| 东京热无码一区二区三区av| 日韩成人无码中文字幕|