Neste artigo, mostrarei como expor o servidor de banco de dados MySQL e Mariadb à Internet. Eu estarei usando o Ubuntu 18.04 LTS para demonstrar os processos. Mas, deve funcionar em outras distribuições Linux também. Os arquivos de configuração podem estar em um local diferente. Essa é a única diferença. Então vamos começar.
Eu preciso de um endereço IP público?
Se você deseja expor mysql ou mariadb à Internet, você precisará de um endereço IP público. Caso contrário, seu servidor não poderá acessível na Internet.
Se você deseja acessar o MySQL ou o Mariadb apenas da sua rede local (LAN), os procedimentos mostrados aqui devem funcionar. Nesse caso, você não precisa de um endereço IP público.
Instalando Mariaadb/Mysql Ubuntu:
Mariadb/mysql está disponível no repositório oficial do pacote do Ubuntu. Então, é fácil instalar.
Primeiro, atualize o cache do repositório de pacotes apt com o seguinte comando:
$ sudo apt update
Agora, você pode instalar o banco de dados MySQL ou Mariadb no Ubuntu. Ambos são tecnicamente os mesmos. A única diferença é; O MySQL é desenvolvido pela Oracle e MariaDB é desenvolvido pela comunidade. A licença do mariadb é mais aberta do que o mysql. Mariadb é um garfo de mysql.
Você pode instalar o MySQL no Ubuntu com o seguinte comando:
$ sudo apt install mysql-server mysql-clientSe você deseja usar o mariadb em vez do MySQL, pode instalá -lo no Ubuntu com o seguinte comando:
$ sudo apt install mariadb-server mariadb-clientDepois de executar o comando necessário para instalar o pacote de banco de dados desejado, pressione y e depois pressione . Eu irei com Mariadb.
Mysql/mariadb deve ser instalado.
Alteração do endereço de ligação do MySQL/Mariadb:
Agora, você tem que alterar o endereço de ligação do MySQL/Mariadb.
Se você escolheu MySQL, o arquivo de configuração para editar é /etc/mysql/mysql.conf.d/mysqld.CNF
Se você escolheu Mariabd, o arquivo de configuração para editar é /etc/mysql/mariadb.conf.d/50-server.CNF
Agora, edite o arquivo de configuração necessário (no meu caso, o arquivo de configuração do mariadb /etc/mysql/mariadb.conf.d/50-server.CNF
) com o seguinte comando:
Agora, role um pouco para baixo e encontre a linha marcada na captura de tela abaixo.
Depois de encontrar a linha, comente a linha (colocando um # no início da linha).
Agora, salve o arquivo de configuração pressionando + x seguido pela y e depois pressione .
Agora, você tem que reiniciar o serviço MySQL/Mariadb.
Se você instalou o MySQL, execute o seguinte comando:
$ sudo systemctl reinicie o mysqlSe você instalou MariaDB, execute o seguinte comando:
$ sudo systemctl reiniciar mariadbCriando novos usuários:
Agora, para acessar remotamente o mysql/mariadb, você deve criar pelo menos um usuário de banco de dados MySQL/MariaDB com privilégios de acesso remoto.
Para fazer isso, faça login no console de banco de dados MySQL/MariaDB raiz com o seguinte comando:
$ sudo mysql -u rootOBSERVAÇÃO: Por padrão, o servidor MySQL/Mariadb não tem raiz Conjunto de senha. Se você estiver usando um servidor MySQL/Mariadb existente, pode ter raiz Conjunto de senha. Nesse caso, você pode fazer login no console MySQL/Mariadb da seguinte forma:
$ sudo mysql -u root -pVocê deve estar conectado ao console MySQL/Mariadb.
Agora, crie um usuário de banco de dados com o seguinte comando SQL:
Crie o usuário 'your_username'@'host_ip_addr' identificado por 'your_password';OBSERVAÇÃO: Substituir seu nome de usuário e sua senha dependendo do que você deseja que o nome de usuário e a senha sejam. Aqui, host_ip_addr é o nome do host ou endereço IP do computador de onde você deseja se conectar ao servidor MySQL/MariaDB. Você também pode usar % como host_ip_addr Se você quiser se conectar de qualquer computador. Também pode ser algo como 192.168.2.% Se você deseja se conectar dos computadores da faixa IP 192.168.2.1 - 192.168.2.254.
Agora, conceda privilégios aos bancos de dados necessários para o usuário que você acabou de criar. Vou deixar o usuário usar todos os bancos de dados.
Conceder todos os privilégios em *.* Para 'shovon'@'%';OBSERVAÇÃO: *.* significa todos os bancos de dados. Você também pode usar db_name.* Para deixar o usuário usar o banco de dados db_name.
Agora, aplique as alterações com o seguinte comando SQL:
Privilégios descarregados;Agora, saia do console MARIADB/MYSQL com o seguinte comando:
desistirConectando -se ao servidor MySQL/Mariadb remotamente:
Para acessar o servidor MySQL/Mariadb remotamente, você precisa conhecer o endereço IP ou o nome do host do servidor MySQL/MariaDB.
Para encontrar o endereço IP do servidor MySQL/Mariadb, execute o seguinte comando no servidor:
$ ip aComo você pode ver, o endereço IP está no meu caso 192.168.21.128. Vai ser diferente para você. Então, certifique -se de substituí -lo por seu a partir de agora.
Você pode acessar o servidor MySQL/MariaDB de qualquer programa cliente MySQL/MariaDB, incluindo o programa MySQL Client Basy Based Based Terminal. Existem muitos IDEs gráficos de MySQL/Mariadb, como DataGrip, MySQL Workbench etc. Nesta seção, vou me conectar ao servidor MySQL/Mariadb do programa MySQL Client baseado em terminal. O programa cliente MySQL/Mariadb não está instalado por padrão. Mas você pode instalá -los com muita facilidade.
Para instalar as ferramentas do cliente MySQL, execute o seguinte comando:
$ sudo apt install mysql -client -y
Para instalar as ferramentas do cliente MariaDB, execute o seguinte comando:
$ sudo apt install mariadb -client -y
Nota: Você pode instalar o MySQL-Client ou o MariadB-Client e poderá se conectar ao servidor MySQL/MariaDB de qualquer um desses clientes.
Agora, na sua máquina cliente, conecte -se ao servidor MySQL/MariaDB remotamente com o seguinte comando:
$ mysql -u your_username -h host_ip_addr -pObservação: Repalição seu nome de usuário com seu nome de usuário do MySQL/Mariadb e host_ip_addr com o nome do host ou endereço IP do seu servidor MySQL/MariaDB.
Agora, digite a senha para o seu usuário mysql/mariadb e pressione .
Você deve estar conectado ao servidor MySQL/Mariadb remotamente, como pode ver na captura de tela abaixo. Estou conectado ao meu servidor mariadb.
Eu também posso executar consultas de banco de dados MySQL/Mariadb.
Então, é assim que você expõe servidores de banco de dados MySQL e MariaDB para a Internet. Obrigado por ler este artigo.