[英]NodeJS xdevapi - Creating Connection to MySQL Database
I've been using the official MySQL NPM package found here: https://www.npmjs.com/package/@mysql/xdevapi .
但是,我似乎無法連接到服務器。 這是我收到的當前錯誤消息:
Error: The server connection is not using the X Protocol.
Make sure you are connecting to the correct port and using a MySQL 5.7.12 (or higher) server intance.
這是生成該問題的代碼:
const db = mysqlx.getSession('root@localhost:33060/schemaname').then(session => {
console.log('SESSION STARTED!!');
});
這只是一個沒有密碼的測試數據庫,所以我認為密碼不是問題。 另外,我確定我使用的是正確的端口,並且 MySQL 版本是 8.xx,所以我認為這不是問題。 我使用應用程序 Dbngin 創建了一個數據庫,並驗證我可以通過在終端中運行以下命令來連接到數據庫: mysql -u root -h 127.0.0.1 --port=33060 -p
有效。 我也在我的 Mac 上運行它。
更新:我也嘗試通過配置 object 沒有太多運氣:
const config = {
user: 'root',
password: '',
host: 'localhost',
port: 33060,
schema: 'schemaname'
};
const db = mysqlx.getSession(config).then(session => {
console.log('SESSION STARTED!!');
});
不幸的是,這段代碼產生了與上面相同的錯誤。
我自己嘗試了一下,得到了同樣的錯誤,因為你使用了錯誤的端口。 可能是您更改了默認端口,但默認端口是:3306 而不是 33060,盡管我必須使用端口 33060 而我的端口是 3306。
X-protocal 要求您將端口乘以 10我在這里看到: https://dev.mysql.com/doc/mysql-port-reference/en/mysql-ports-reference-tables.ZFC35FDC70D52269D236988A 。 因此,如果您的原始端口是 33060,我猜它應該是 330600。
你可以試試這個命令SHOW VARIABLES LIKE 'mysqlx_port';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.