Удаленный MySQL: как настроить удаленный сервер MySQL в Windows 10

// Новое обновление ниже

Я только что выпустил приложение для раннего альфа-тестирования, но получаю эту ошибку => address: "127.0.0.1" code: "ECONNREFUSED" errno: -111 fatal: true port: 3306 syscall: "connect". Я искал и обнаружил, что это связано с тем, что MySQL не разрешает подключения, кроме localhost. После повторного поиска я наткнулся на эти два учебника (1-й) (2-й), но столкнулся с некоторыми проблемами, и они все еще не работают. Мой внешний интерфейс [здесь][3], а сервер [здесь][4] (удален). После .\mysql.exe -u username -h root -p. Replace mnhs-shs.herokuapp.commysql: написано [Warning] Using a password on the command line interface can be insecure.. Это не ошибка, но я все еще не могу подключиться к базе данных на сервере

Шаги, которые я сделал:

  1. Установить адрес привязки = 0.0.0.0
  2. остановить и запустить MYSQL80
  3. Настроенные брандмауэры
  4. Пытался подключиться через .\mysql.exe -u имя пользователя -h root -p. Заменить mnhs-shs.herokuapp.com
  5. СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ «имя пользователя» @ «mnhs-shs.herokuapp.com», ИДЕНТИФИЦИРОВАННОГО «паролем»;
  6. ПРЕДОСТАВЬТЕ СОЗДАНИЕ, ИЗМЕНЕНИЕ, УДАЛЕНИЕ, ВСТАВКУ, ОБНОВЛЕНИЕ, УДАЛЕНИЕ, ВЫБОР, ССЫЛКИ, ПЕРЕЗАГРУЗКУ на . TO 'username'@'mnhs-shs.herokuapp.com' С ВАРИАНТОМ ПРЕДОСТАВЛЕНИЯ;
  7. ... все еще ошибка 111 на интерфейсе

Изображение подключения к базе данных: Удаленный MySQL: как настроить удаленный сервер MySQL в Windows 10

Я уже подключен к базе данных через

const mysql = require('mysql')
const connection = mysql.createPool({
    host: process.env.DB_HOST,
    user: process.env.DB_USER,
    password: process.env.DB_PASSWORD,
    database: process.env.DB_DATABASE,
})
module.exports = connection

.env

DB_HOST=remotemysql.com

Обновление: что мне поставить в качестве сервера? Код из этого сайт

From there, type .\mysql.exe -u username -h X.X.X.X:XXXX -p. Replace X.X.X.X:XXXX with your remote server IP address and port number (eg. 100.200.100.200:3306) and username with a MySQL username that allows remote access (such as root). Follow any additional on-screen instructions.

Я просто вставил шаг 4 сверху

Откуда вы запускаете свой сервер MySQL? Если он находится на вашем локальном компьютере, он не может подключиться к общедоступному, если вы не используете другие инструменты, например, ngrok, чтобы открыть сервер для общего доступа.

Albert Alberto 04.05.2022 17:07

@AlbertAlberto Я просто использую бесплатную удаленную службу mysql от remotemysql.com. После регистрации вы можете получить бесплатную удаленную базу данных для тестирования. Он работает на локальном хосте, но когда я его развернул, он не

Nugget 04.05.2022 17:10

Схема уже настроена и уже есть брандмауэр из 2-го туториала. Может я что-то пропустил или просто не работает. я действительно не знаю

Nugget 04.05.2022 17:18

Затем в своем приложении вы должны изменить адрес «127.0.0.1» на параметры подключения, которые выдаются в «remotemysl.com».

Albert Alberto 04.05.2022 17:34

@AlbertAlberto Я подключен, но все равно не работает. я отредактировал вопрос

Nugget 04.05.2022 17:38

Вы перезапускали приложение?

Albert Alberto 04.05.2022 20:20

Значение по умолчанию 127.0.0.1 все еще находится в настройках в соответствии с ошибкой. {"message":{"errno":-111,"code":"ECONREFUSED","syscall":"co‌​nnect","address":"12‌​7.0.0.1","port":3306‌​, "фатальный": правда}}

Albert Alberto 04.05.2022 20:20
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
В предыдущем посте мы создали функциональность вставки и чтения для нашей динамической СУБД. В этом посте мы собираемся реализовать функции обновления...
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
Роли и разрешения пользователей без пакета Laravel 9
Роли и разрешения пользователей без пакета Laravel 9
Этот пост изначально был опубликован на techsolutionstuff.com .
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
0
7
32
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Догадаться. Для будущего себя: Это не только ошибка локального хоста. Модуля .env, gitignore и dotenv недостаточно, если вы собираетесь развернуть его на героку. Переменные конфигурации Heroku заставляют его работать, см. ссылку ниже. https://devcenter.heroku.com/articles/config-vars.

Другие вопросы по теме