acesso negado - mysql no manjaro
estou tendo o “clássico” erro access denied for root@localhost no mysql workbench, acontece que esse erro já rolou antes comigo no mint e no ubuntu, consegui resolver seguindo simples passos de vídeos na internet.

o problema é que não estou achando muito material para me ajudar a resolver aqui no m…
até o momento resolvi com [este link](https://mariadb.com/kb/en/library/set-password/#example)
nevermind… 
ao fim de uma semana de volta disto, lembrei-me de utilizar ’ para o username e password, e ja funcionou… 
bem se alguém passar pelo mesmo, o que têm de fazer é: 
server: ‘mqtt://localhost:1883’ 
user: ‘user’ 
password: ‘password’ <p>não mexa com o banco de dados mysql. há muito mais acontecendo lá do que apenas a tabela de usuários. sua melhor aposta é o comando " <a href="https://dev.mysql.com/doc/refman/5.5/en/show-grants.html">show grants</a> for". eu tenho muitos aliases e funções de manutenção da cli no meu .bashrc (na verdade, meus .bash\_aliases que eu forneço no meu .bashrc). esta função:</p><pre><code>mygrants() { mysql -b -n $@ -e "select distinct concat( 'show grants for \'', user, '\'@\'', host, '\';' ) as query from mysql.user" | \ mysql $@ | \ sed 's/\(grant .*\)/\1;/;s/^\(grants for .*\)/## \1 ##/;/##/{x;p;x;}' } </code></pre><p>o primeiro comando do mysql usa sql para gerar sql válido, que é canalizado para o segundo comando do mysql. a saída é então canalizada através do sed para adicionar comentários bonitos.</p><p>o $ @ no comando permitirá que você o chame como: mygrants --host = prod-db1 --user = admin --password = secret</p><p>você pode usar seu kit de ferramentas unix completo da seguinte maneira:</p><pre><code>mygrants --host=prod-db1 --user=admin --password=secret | grep rails\_admin | mysql --host=staging-db1 --user=admin --password=secret </code></pre><p>essa é a maneira certa de mover usuários. sua mysql acl é modificada com sql puro.</p> <p>bem, na verdade existe uma resposta específica do ubuntu para esta questão.</p><p>como mencionado por gergoes link, isso é basicamente sobre como modificar <em>/etc/mysql/my.cnf </em> e definir um novo valor para <strong> datadir = </strong> na seção <strong> [mysqld] </strong>. até agora, a parte inespecífica da resposta.</p><p>assumindo que você está executando uma versão um tanto moderna do ubuntu, você pode muito bem ter <a href="https://help.ubuntu.com/10.04/serverguide/c/apparmor.html">apparmor</a> instalado por padrão, com um perfil para <em>/usr/sbin/mysqld </em> em modo reforçado. esse perfil padrão provavelmente não aceitará seu novo datadir.</p><p>vamos supor que seu novo datadir seja <em>/home/data/mysql </em>.</p><p>se você abrir o arquivo <em> /etc/apparmor.d/usr.sbin.mysqld </em>, você, entre as regras, encontrará essas duas linhas.</p><pre><code>/var/lib/mysql/ r, /var/lib/mysql/** rwk, </code></pre><p>assumindo nosso exemplo acima, eles terão que ser substituídos ou (provavelmente preferíveis) complementados por essas duas linhas.</p><pre><code>/home/data/mysql/ r, /home/data/mysql/** rwk, </code></pre><p>antes de podermos iniciar nosso servidor mysql, com seu novo datadir, também teremos que recarregar explicitamente nosso novo perfil apparmor.</p><pre><code>$ sudo apparmor\_parser -r /etc/apparmor.d/usr.sbin.mysqld </code></pre> <p>consegui resolver o erro na pipeline, por tentativa e erro coloquei o db\_host na .env como &#39;mysql&#39; e ele não reclamou no stage de build. mesmo assim ficando diferente do que foi passado pelo instrutor!</p> <p>verifica se o .jar do mysql connector está na pasta web-inf/lib. depois com o botão direito do mouse seleciona a opção de adicionar ao classpath.</p>
<p>espero ter ajudado.</p> <p>hmm, então já está salvo no banco com essas coisas. bom, você tem problemas de codificação em algum lugar. seja nos seus arquivos php, html ou mesmo no banco. tenta usar essa função antes de fazer as queries pra ver se resolve daniel.</p>
<pre class="prettyprint"><code>mysqli\_set\_charset ( $conexao , &#34;utf8&#34;)</code></pre>
<p>tenta inserir e remover registros depois de usar essa função pra ver se resolve.</p> <p>dá true... 
consegui resolver aqui... refiz todo o curso a partir do início. e instalei novamente o hsqldb.jar.
não deu mais erro.
obrigado a todos pela ajuda!</p> <p>o operador <a href="http://php.net/manual/en/language.operators.errorcontrol.php"><code>@</code></a> tells php para suprimir mensagens de erro, para que elas não sejam mostradas.</p><p>por exemplo, usando:</p><pre><code>$result = mysql\_query("this is an invalid query"); </code></pre><p>resultaria em um aviso sendo mostrado, informando que a consulta mysql é inválida, enquanto</p><pre><code>$result = @mysql\_query("this is still an invalid query"); </code></pre><p>não faria.</p><p>note, no entanto, que esta é uma prática de programação muito ruim, pois não faz com que o erro desapareça, apenas os esconde e torna a depuração muito pior, já que você não consegue ver o que está realmente errado com seu código.</p><p>em vez de usar <code>@</code>, você deve desativar <s><code>error\_reporting</code> e <code>display\_errors</code></s> apenas <code>display\_errors</code> em <a href="http://no.php.net/manual/en/errorfunc.configuration.php">php.ini</a> </p> eu fiz meu twitter e agora ñ consigo entrar entendi... não sei como é o tratamento de exceções no mysql, mas vou ver se encontro alguma informação sobre isso e compartilho contigo....