Você precisa configurar um usuário para acesso remoto. Isso permitirá que você se conecte ao seu banco de dados usando qualquer cliente, incluindo o Microsoft Access.
Primeiro, habilite o acesso remoto ao seu banco de dados, editando o arquivo de configuração do servidor mysql. Você encontrará isso em /etc/mysql/mysql.conf.d/mysqld.conf
Procure por este link e verifique se ele está comentado ou remova esta linha:
# bind-address = 127.0.0.1
Se você fez uma alteração no arquivo, certifique-se de reiniciar o servidor mysql com:
$ sudo systemctl restart mysql
Agora você terá que criar um usuário ou garantir que um usuário atual possa se conectar a partir do controle remoto. Você pode fazer isso com estas etapas de um comando do terminal:
$ mysql -u root -p
Responda à solicitação de senha com a senha de root e continue com:
mysql> GRANT ALL ON mydatabase.* TO 'myuser'@'%' IDENTIFIED BY 'mypass';
As variáveis desse comando são mydatabase , myuser e mypass .
mydatabase - The name of the database myuser - The user with access to the database mypass - The password for the user
O comando criará o usuário se ele não existir e atribuirá a senha "mypass" ou o que você colocar nesse campo para o usuário. Se o usuário já existir, ele apenas fará com que o "mypass" seja a senha desse usuário.
Você pode testar a conexão executando isso no commanline deste computador ou de qualquer computador.
$ mysql -h [hostname/or IP address] -u myuser -p
Quando você pressionar ENTER
, ele solicitará sua senha e conectará você ao servidor se as credenciais estiverem corretas. Você pode então executar isso para carregar o banco de dados:
mysql> use mydatabase;
O teste de linha de comando é o que o aplicativo cliente (nesse caso, o Microsoft Access) executaria automaticamente. Quando você configura o cliente, o Microsoft Access (ou qualquer outro cliente de banco de dados GUI , ele solicita as seguintes coisas:
- host (que você fornece com o nome do host ou ipaddress)
- banco de dados
- userId
- senha
O comando criará o usuário se ele não existir e atribuirá a senha "mypass" ou o que você colocar nesse campo para o usuário. Se o usuário já existir, ele apenas fará com que o "mypass" seja a senha desse usuário.
Você pode testar a conexão executando isto no commanline deste computador ou de qualquer computador.
$ mysql -h [hostname/or IP address] -u myuser -p
Quando você pressionar ENTER
, ele solicitará sua senha e conectará você ao servidor se as credenciais estiverem corretas. Você pode então executar isso para carregar o banco de dados:
mysql> use mydatabase;
O teste de linha de comando é o que o aplicativo cliente (nesse caso, o Microsoft Access) executaria automaticamente. Quando você configura o cliente, o Microsoft Access (ou qualquer outro cliente de banco de dados GUI , ele solicita as seguintes coisas:
- host (que você fornece com o nome do host ou ipaddress)
- banco de dados
- userId
- senha
A porta padrão do mysql é 3306 . Seu cliente lhe dará uma opção para fornecer a porta se você configurou seu controle remoto para ser diferente. Você terá que configurar seu roteador para o encaminhamento de portas para o seu computador servidor mysql. Esta será a porta 3306 ou uma diferente se você configurar seu servidor diferente do padrão.
Para testar a conexão a partir da linha de comando, especificando a porta que você usaria:
$ mysql -h [hostname/or IP address] --port 3306 -u myuser -p
Altere o 3306 para corresponder ao modo como você configurou seu servidor, se você o alterar do padrão.
Quanto à sua pergunta, "Eu substituo 'myuser' @ 'localhost'", o myuser pode pelo seu nome, ou qualquer outro nome que você decida dar a ele. Cabe a você se você quer que seja o mesmo nome.