Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sander Luís

[Resolvido] criar usuário e dar privilégios com mysql pelo php

Recommended Posts

ae pessoal, tenho esse script para rodar no prompt do mysql mas queria executar ele pelo php:

 

mysql> CREATE USER dba;
mysql> GRANT ALL PRIVILEGES ON *.* TO dba@'localhost' IDENTIFIED BY 'passworddba';

 

eu tenho q conectar o db com o usuario padrão meu e a senha e dae executar esse sql, mas para executar ele no php tem q mudar alguma coisa ae né?? vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

assim pessoal, meu codigo tah assim, eu queria criar nele o banco de dados, o usuario e atribuir o novo usuario ao banco resen criado com todos os direitos... maso banco cria, e na hora de criar o usuario volta mensagem dizendo:

 

Access denied; you need (at least one of) the CREATE USER privilege(s) for this operation

 

...

 

segue o codigo:

 

<?php
if($_SERVER['REQUEST_METHOD'] == "POST"){
$nome=  $_POST['nome'];
$host = "localhost";
$usuario=  $_POST['usuario'];
$senha=  $_POST['senha'];
$con=mysql_connect($host,$usuario,$senha) or die("Err:Conn");
mysql_query("CREATE DATABASE `sandersi_".$nome."` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;",$con)or die(mysql_error());
mysql_query("CREATE USER '".$nome."';",$con)or die(mysql_error());
mysql_query("GRANT ALL PRIVILEGES ON *.* TO ".$nome."@'localhost' IDENTIFIED BY '".$nome."';",$con) or die(mysql_error());
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Adicionar Bando de Dados</title>
</head>
<body>
<form action="" method="post">
usuario:<input name="usuario" type="text" /><br>
senha:<input name="senha" type="text" /><br><br>
nome:<input name="nome" maxlength="15" type="text" /><br>
<input name="submit" type="submit" />
</form>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como o erro está dizendo você não tem privilégios para criar um usuário no servidor.

Tente criar diretamente no MySQL um usuário com todos os privilégios e depois execute o código com esse usuário.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como o erro está dizendo você não tem privilégios para criar um usuário no servidor.

Tente criar diretamente no MySQL um usuário com todos os privilégios e depois execute o código com esse usuário.

 

isso q estranhei pq la em sima o usser e senha q eu coloca é o padrão do mysql... deveria funcionar..

 

se eu vou la em phpmyadmin > localhost > sql e rodo

CREATE USER 'sandersi_teste';

 

responde com erro

#1227 - Access denied; you need (at least one of) the CREATE USER privilege(s) for this operation

 

como q se eu for no cpanel em criar usuario dae roda?? kk

 

eu quero criar pelo php direto, isso vai estar no meu csm q to fazendo.. mas sei lá o pq de não rodar... quem sabe vcs saibam eu sou novato aki kkk

Compartilhar este post


Link para o post
Compartilhar em outros sites

Que servidor você está utilizando?

Provavelmente o usuário padrão não tem esses privilégios (talvez por questões de segurança).

Compartilhar este post


Link para o post
Compartilhar em outros sites

linux... pelo jeito é isso mesmo, andei dando uma lida e em tutorial em inglês fala q a empresa de hospedagem faz isso por segurança etc...

 

oq estranhei é q pelo sql do phpmyadmin da erro, ja pelo cpanel em criar usuario funciona perfeito... kkk

 

então, se vcs sabem qual codigo sql ficaria então ali para: criar o banco de dados, atribuir um usuario JA EXISTENTE com todos os privilegios para o banco recem criado??? q dae eu adicionou o mesmo usuario q eu ja fiz pelo cpanel vlw

 

UPDATE

 

uma coisa q persebi é q todos os bancos de dados devem comesar com sandersi_

se não da erro e não ganho permição para nada...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se você está utilizando uma hospedagem gratuita, provavelmente não conseguirá fazer isso. Então teste seu código em um servidor local.

Se sua hospedagem for paga, utilize o serviço de suporte para que eles liberem um usuário com os privilégios necessários.

 

O cPanel é configurado com um usuário que tem os privilégios para modificar o banco de dados. E não tem como saber qual é este usuário e sua senha sem ser o administrador do sistema.

 

O prefixo no banco de dados é, geralmente, uma imposição de hospedagens gratuitas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

a questão já foi elucidada..

 

a conta que está usando não possui privilégios para criar novas contas

 

extendendo o assunto, o fato do cpanel conseguir criar novos usuários não signfica que você ou otro software conseguirá fazê-lo..

 

O que ocorre é que o cpanel utiliza contas administrativas, das quais, provavelmente você não possui acesso, especialmente num host compartilhado.

 

Verfique com o administrador do host se há possibilidade de liberar esse recurso . Provavelmente será negado e indicado um servidor dedicado.

 

 

 

off

#2

o novo usuario ao banco resen criado

"recém"

 

essa foi de lascar.. rssss

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok...vlw sei lá, mas parece q eu tinha criado um usuario q fica como padão para todos os novos bancos de dados... então criei obanco e add os dados pelo php, surpresa quando fui no cpanel ver... tava la o novo banco q criei sem add usuários com o usuário padrão e todos os carreitos, direitos...

 

kkkkkkkkkk:

valei pelo spoiler eu não sabia como q colocava akilo, ja do erro nem repare kkkkk aki é 4:11 e oque posto mostra como 5:11 deve ser por causa do horario de verão morro no RS.. e continuando do erro, to durmindo no pc e escrevendo, deve ser por isso kkkkkkk aindaa q consegui fazer a busca fulltext search ufaa kkk depois quero adaptar para pdo ja vai ficar ferra kkk vlw por tudo

 

 

[RESOLVIDO]

-----------

[RESOLVIDO]

-----------

[RESOLVIDO]

 

Se sua hospedagem for paga, utilize o serviço de suporte para que eles liberem um usuário com os privilégios necessários.

é paga sim hehe , finalmente achei uma q dava pro que eu queria:

 

 

Espaço em Disco 1 GB

Transferência Ilimitada

Contas de E-mail Ilimitada

Redirecionamentos de E-mail Ilimitada

Filtros de E-mail SIM

Listas de E-mail Ilimitadas

Contas de FTP Ilimitadas

Estacionamento de Domínios Ilimitados

Domínios Adicionais Ilimitados

Subdomínios Ilimitados

HTML / PHP 5 SIM

CGI / Perl SIM

SSI - Server Side Includes SIM

Ruby On Rails SIM

Banco de Dados MySQL Ilimitado

phpMyAdmin SIM

Acesso Remoto ao MySQL SIM

Banco de Dados PostgreSQL Ilimitado

phpPgAdmin SIM

Painel de Controle cPanel

Construtor de Sites RVSiteBuilder Pro

Softaculous SIM

Fantástico De Luxe SIM

Backup Diário SIM

Ativação Imediata SIM

 

PREÇO: +- R$36,00 /ano

 

não fiz propaganda não dei o nome então nao excluam..se querem saber mandem uma mensagem no meu perfil pedindo.. vlw

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.