MySQL支援IPv6-TODO
MySQL支援IPv6
此處使用的MySQL版本為mysql-5.5.35-linux2.6-x86_64。
驗證作業系統支援IPv6,此處是Linux作業系統
ping6 ::1
配置MySQL支援IPv6連線
在MySQL啟動時繫結地址,在服務啟動時使用如下引數--bind-address=addr配置,
其中addr可以是IPv4或者IPv6地址,或者主機名hostname。
修改my.cnf配置檔案,在[mysqld]選項下增加bind-address = ::配置,
把bind-address配置成::可以保證同時支援IPV4和IPV6的TCP/IP的連線。
[mysqld]bind-address = ::
重啟mysql使配置生效:
/etc/init.d/mysqld restart
建立測試使用者
使用IPv4先登陸mysql,
執行命令CREATE USER 'ipv6test'@'::1' IDENTIFIED BY '123456';
給ipv6test使用者增加執行許可權
執行命令GRANT ALL PRIVILEGES ON . TO 'ipv6test'@'::1' IDENTIFIED BY '123456' WITH GRANT OPTION;
驗證透過::1本地連線mysql資料庫
輸入命令mysql -h ::1 -uipv6test -p123456
新增"root@%"就可任意ip訪問
和IPv4時沒有區別,如果已經配置了"root@%"使用者,直接使用IPv6地址即可訪問。
grant all on
.
to root@'%' identified by 'zdh1234' with grant option;
mysql -h 2001:db8:1:0:20c:29ff:fe96:8b55 -uroot -pzdh1234
使用netstat檢視3306埠:
netstat -an | grep 3306
0.0.0.0:3306
表示監聽埠繫結IPv4,只支援IPv4地址連線
:::3306
表示監聽埠繫結IPv4和IPv6,支援IPv4和IPv6地址連線
使用jdbc連線mysql的URL
// IPv4連線URL
// String jdbcIpv4Url = "jdbc:
";
// IPv6連線URL
// String jdbcIpv6Url = "jdbc:
";
注意使用IPv6地址時,必須使用address=(protocol=tcp)(host=2001:db8:1:0:20c:29ff:fe96:8b55)(port=3306)格式,
同時上面的格式中的host也相容IPv4的格式,如下:
address=(protocol=tcp)(host=127.0.0.1)(port=3306)
所以為了同時相容IPv4和IPv6,建議使用上面的格式連線MySQL。
注意下面的連線字串可能過長:
address=(protocol=tcp)(host=2001:db8:1:0:20c:29ff:fe96:8b55)(port=3306)
會有如下報錯:
SQLException : SQL state: HY000 java.sql.SQLException: String 'address=(protocol=tcp)(host=2001:db8:1:0:20c:29ff:fe96:8b55)(port=3306' is too long for host name (should be no longer than 60) ErrorCode: 1470
可以使用簡寫版本:
address=(protocol=tcp)(host=2001:db8:1:0:20c:29ff:fe96:8b55),
或者把2001:db8:1:0:20c:29ff:fe96:8b55變為主機名hostname再填寫,
或者嘗試升級mysql版本提供更長的字元支援。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31551496/viewspace-2212512/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql支援原生json使用說明MySqlJSON
- mysql 支援索引字元超過 767MySql索引字元
- MySQL不支援DELETE使用表別名?MySqldelete
- Mysql支援的資料型別(總結)MySql資料型別
- MySQL8.0新特性-CTE語法支援MySql
- MySQL 官宣:支援讀寫分離了!!MySql
- Oracle & MySQL & PostgreSQL資料庫恢復支援OracleMySql資料庫
- KunlunDB對MySQL私有DML語法的支援MySql
- Laravel 資料庫脫敏工具,僅支援 MySQLLaravel資料庫MySql
- MySQL 5.7新支援--通用表空間實戰MySql
- 函式計算支援 MySQL 例項繫結函式MySql
- mysql支援跨表delete刪除多表記錄MySqldelete
- Java 支援的資料型別與 MySQL 支援的資料型別對比Java資料型別MySql
- phpstudy自帶MySQL不支援innodb解決辦法 和 更換MySQL版本PHPMySql
- 臥槽:油管用MySQL支援24.9億使用者MySql
- Mysql8.0不支援grant all privileges on *.* to root@“%“ identified by “.“;MySqlIDE
- Mysql利用Like支援根據匹配度進行查詢MySql
- 沒有列存的MySQL千萬級分析也能支援MySql
- MySQL資料庫delete資料時,不支援表別名MySql資料庫delete
- 智慧掃描支援從MySQL例項線上抓取慢SQLMySql
- 【mysql】【Sequelize】【錯誤記錄】update修改資料後,不返回資料(其實就是mysql不支援)MySql
- CentOS7安裝ecshopV2.7.3過程中mysql不支援問題CentOSMySql
- 如何快速讓MySQL資料庫伺服器支援遠端連線MRMySql資料庫伺服器
- 檢視修改mysql編碼方式讓它支援中文(gbk或者utf8)MySql
- ubuntu系統安裝mysql並支援遠端連線的詳細過程UbuntuMySql
- 你知道是哪個是常見的約束中MySql不支援的嗎?MySql
- MAMP PRO for Macv6.6.4 支援M1M2 (PHP/MySQL開發環境)MacPHPMySql開發環境
- 支援女權就是支援良知
- 一款線上ER模型設計工具,支援MySQL、SQLServer、Oracle、Postgresql sql匯入模型MySqlServerOracle
- 通過Python爬取國家統計局省市區三級地址庫(支援MySQL和JSON格式)PythonMySqlJSON
- idea支援vueIdeaVue
- MCTencentOpenAPI Cocoapods支援API
- AlipaySDK Cocoapods支援
- 配置nginx支援Nginx
- 支援向量機
- openGauss 支援HyperLogLog
- openGauss 支援LLVMLVM
- Testcontainer JDBC 支援AIJDBC