Назначьте пользователя phpmyadmin в базу данных из запроса MySQL [duplicate]

Я бы сделал что-то вроде:

  [XmlIgnore] public Bitmap LargeIcon {get;  задавать;  } [Browsable (false), EditorBrowsable (EditorBrowsableState.Never)] [XmlElement («LargeIcon»)] public byte [] LargeIconSerialized {get {// сериализовать if (LargeIcon == null) возвращает значение null;  используя (MemoryStream ms = new MemoryStream ()) {LargeIcon.Save (ms, ImageFormat.Bmp);  return ms.ToArray ();  }} set {// deserialize if (value == null) {LargeIcon = null;  } else {using (MemoryStream ms = новый MemoryStream (значение)) {LargeIcon = новый битмап (мс);  }}}}  
5
задан skaffman 15 March 2012 в 15:28
поделиться

6 ответов

Вы можете сделать что-то вроде этого:

mysql_connect('localhost','user',password);
mysql_query("CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';");
mysql_query("GRANT ALL ON db1.* TO 'username'@'localhost'");
mysql_query("CREATE DATABASE newdatabase");
mysql_close();

Вы можете посмотреть документацию MySQL на GRANT и CREATE USER

7
ответ дан Fabian 15 August 2018 в 21:37
поделиться

я предлагаю вам использовать phpmyadmin.

вам нужно выполнить шаги:

  1. открыть phpmyadmin
  2. перейти в раздел администратора
  3. ударить по учетной записи пользователя
  4. положить имя пользователя и пароль
  5. установить привилегии
  6. нажать кнопку [go]
]

, которые все видят в действии на youtube [ нажмите здесь ]

, если вы хотите узнать больше о phpMyadmin , идите с официальным

, но если есть какая-либо особая причина, чтобы сделать это с php, здесь приведена оценка sql

CREATE USER 'tesrytss'@'%'//user name IDENTIFIED VIA mysql_native_password USING '***';.//set pass GRANT SELECT, INSERT, UPDATE, DELETE, FILE ON *.* TO 'tesrytss'@'%' // previlages and username and location REQUIRE NONE WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0; //other requerment

0
ответ дан insCode 15 August 2018 в 21:37
поделиться
<!--

Go to setup on line 48
Created by kierzo@kierzo.com

-->

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta content="en-gb" http-equiv="Content-Language" />
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Create Database</title>
</head>

<body>




<!-- Title -->
<p><h1>Create Database</h1></p>
<p></p>
<p>


<!-- The form -->
<form action="<?php $currentFile = $_SERVER["PHP_SELF"];$parts = Explode('/', $currentFile);echo $parts[count($parts) - 1];?>" method="post">

Database Name: <input name="databasename" type="text" />
<br>
DB Pass: <input name="dbpass" type="text" />
<br>
Admin Pass: <input name="passbox" type="password" />

<p><input name="Submit1" type="submit" value="submit" /></p>

</form>

<!-- end form -->

</p>

</body>

</html>



<?php

//*********************** CONFIG SETUP ************************************//
// Created by kierzo@kierzo.com
//
// set the admin pass for the page
$adminpass = "*******";   // change ******* with your page pass
//
// set mysql root pass
$mysqlRootPass = "*******";  // change ******* with your mysql root pass
//
//
//*********************** CONFIG SETUP ************************************//


// if isset set the varibables

if(isset($_POST["passbox"]) && ($_POST["databasename"])){


$databasename = $_POST["databasename"];
$password = $_POST["passbox"];
$dbpass = $_POST["dbpass"];

}
else { exit;}

if(($password) == ($adminpass)) {


}
else {

echo "Incorrect Password!";

exit;}

// store connection info...

$connection=mysqli_connect("localhost","root","$mysqlRootPass");


// check connection...

if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }


  // Create database
  echo "<br><br>";
#echo "$sql";
$sql="CREATE DATABASE $databasename";

if (mysqli_query($connection,$sql))
  {
  echo "<h2>Database <b>$databasename</b> created successfully!</h2>";
  }
else
  {
  echo "Error creating database: " . mysqli_error($con);
  }


    // Create user

$sql='grant usage on *.* to ' . $databasename . '@localhost identified by ' . "'" . "$dbpass" . "'";
echo "<br><br>";
#echo "$sql";
if (mysqli_query($connection,$sql))
  {
  echo "<h2>User Created... <b>$databasename</b> created successfully!</h2>";
  }
else
  {
  echo "Error creating database user: " . mysqli_error($con);
  }


      // Create user permissions

$sql="grant all privileges on $databasename.* to $databasename@localhost";
echo "<br><br>";
#echo "$sql";
if (mysqli_query($connection,$sql))
  {
  echo "<h2>User permissions Created... <b>$databasename</b> created successfully!</h2>";
  }
else
  {
  echo "Error creating database user: " . mysqli_error($con);
  }

  echo "<p>Database Name: $databasename</p>";
  echo "<p>Database Username: $databasename</p>";
  echo "<p>Database Password: $dbpass</p>";
  echo "<p>Database Host: localhost</p>";
?>
-1
ответ дан kierzo 15 August 2018 в 21:37
поделиться

Если вы размещаете свой проект на CPanel, то метод mysql_query не будет работать для создания баз данных, пользователей и предоставления разрешений.

Вы должны использовать XML Api для CPanel.

<?php
include("xmlapi.php");

$db_host = 'yourdomain.com'; 
$cpaneluser = 'your cpanel username';
$cpanelpass = 'your cpanel password'; 

$databasename = 'testdb';
$databaseuser = 'test'; // Warning: in most of cases this can't be longer than 8 characters
$databasepass = 'dbpass'; // Warning: be sure the password is strong enough, else the CPanel will reject it

$xmlapi = new xmlapi($db_host);    
$xmlapi->password_auth("".$cpaneluser."","".$cpanelpass."");    
$xmlapi->set_port(2082);
$xmlapi->set_debug(1);//output actions in the error log 1 for true and 0 false  
$xmlapi->set_output('array');//set this for browser output  
//create database    
$createdb = $xmlapi->api1_query($cpaneluser, "Mysql", "adddb", array($databasename));   
//create user 
$usr = $xmlapi->api1_query($cpaneluser, "Mysql", "adduser", array($databaseuser, $databasepass));   
 //add user 
$addusr = $xmlapi->api1_query($cpaneluser, "Mysql", "adduserdb", array("".$cpaneluser."_".$databasename."", "".$cpaneluser."_".$databaseuser."", 'all'));
?>

Загрузите xmlapi.php из здесь или просто выполните поиск в google для него.

Это то, что отлично сработало для меня.

5
ответ дан Tamás Pap 15 August 2018 в 21:37
поделиться

Да, поскольку все эти действия могут выполняться обычными SQL-запросами.

Однако я бы воздержался от запуска PHP-скриптов с подключением к базе данных от пользователя root.

8
ответ дан Your Common Sense 15 August 2018 в 21:37
поделиться
  • 1
    +1 Используйте специальную учетную запись, которая может создавать только базы данных и пользователей, поскольку она предотвращает несчастные случаи и дает ограничение на ущерб, если учетная запись была скомпрометирована. Он ничего не может потерять и не имеет доступа к данным. – Dan Blows 16 March 2012 в 13:54
  • 2
    plus1 Очень хорошая точка .. – James Walker 10 July 2017 в 03:31
0
ответ дан doppelgreener 29 October 2018 в 04:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: