PHP скрипт автоматически создает базу данных MySQL? - PullRequest
2 голосов
/ 05 августа 2011

Кто-нибудь знает, есть ли скрипт, который будет автоматически создавать базу данных mysql вместо того, чтобы заходить в cpanel и вручную создавать базу данных, имя пользователя и пароль?

спасибо

Ответы [ 7 ]

6 голосов
/ 05 августа 2011

Вы не можете создать имя пользователя и пароль, если не войдете в систему с пользователем более высокого уровня.Это обычно корень.Создание базы данных очень просто после использования имени пользователя и пароля с достаточными привилегиями.

<?php

    $dsn = $dsn = "mysql:host=localhost";
    $pdo = new PDO($dsn,"root","");

    //Creation of user "user_name"
    $pdo->query("CREATE USER 'user_name'@'%' IDENTIFIED BY 'pass_word';");
    //Creation of database "new_db"
    $pdo->query("CREATE DATABASE `new_db`;");
    //Adding all privileges on our newly created database
    $pdo->query("GRANT ALL PRIVILEGES on `new_db`.* TO 'user_name'@'%';");

?>

В этом сценарии I предполагается Ваш пользователь root называется «root», а его пароль - * 1006.* пусто , если это не так, измените строку 4 на соответствующую.

0 голосов
/ 22 августа 2017

require_once 'database.php' добавьте эту строку кода в ваш index.php

$servername = 'localhost';
$username= 'root';
$password ='';

$conn = new mysqli($servername,$username,$password);

if($conn->connect_error)
{
    die("Connection Failed !" . $conn->connect_error()); 
}
    else
    {
        $sql = "CREATE DATABASE test_employee";

        if($conn->query($sql)== TRUE )
        {
            echo "Database Created Successfully";
        }
    }
0 голосов
/ 17 января 2014

Я только что делал это в своем проекте

Фактический ответ: вы можете, но это немного сложно.

Cpanel не позволяет вам использовать обычную "CREATE DATABASE" mydbname ";»в сценарии php для создания новой базы данных.

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

это можно сделать с помощью php-скрипта, но вы должны использовать API - который выполняет те же действия, но автоматически.Вы должны указать API, ваши имя пользователя cpanel и пароль cpanel.

просто следуйте ответу на этот вопрос Создать базу данных cpanel с помощью php-скрипта

надеюсь, что это поможет

0 голосов
/ 27 марта 2013
<?php
    mysql_connect("localhost", "root", "gm123") or die(mysql_error());
    mysql_query("CREATE DATABASE cat") or die(mysql_error());
    mysql_select_db("cat") or die(mysql_error());
    mysql_query("CREATE TABLE user(username varchar(20), password varchar(20), permission varchar(20))") or die(mysql_error());
    mysql_query("INSERT INTO user(username,password,permission) VALUES('gm','311807','admin')") or die(mysql_error());  
    mysql_query("CREATE TABLE cattbl(id INT NOT NULL PRIMARY KEY ,name VARCHAR(30),roll INT NOT NULL,technology VARCHAR(30),semister VARCHAR(30),shift VARCHAR(30),bdate varchar(30),cell VARCHAR(30),address VARCHAR(30),picture LONGBLOB)") or die(mysql_error());        

        header("Location: index.php");
?>

вы можете попробовать это для вашей проблемы

0 голосов
/ 05 августа 2011

Когда вы подключены к корневой учетной записи сервера (или учетной записи с разрешениями на добавление базы данных / пользователей), вы можете создавать базы данных и пользователей.

Добавление пользователя:

<?php
mysql_query("CREATE USER 'USER'@'%' IDENTIFIED BY 'PASSWORD';");
mysql_query("GRANT USAGE ON * . * TO 'USER'@'%' IDENTIFIED BY 'PASSWORD' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;");
?>

Создание базы данных:

<?php
mysql_query("CREATE DATABASE 'DATABASE';");
?>

Предоставление пользователю прав доступа к базе данных:

<?php
mysql_query("GRANT ALL PRIVILEGES ON `DATABASE` . * TO 'USER'@'%';");
?>
0 голосов
/ 05 августа 2011

Вы определенно можете!Вы можете использовать PHP.

Сначала вам нужно подключиться к базе данных.Затем вам нужно выполнить SQL-запрос к той базе данных, которая создает базу данных.(что, по сути, и делает cpanel)

РЕДАКТИРОВАТЬ: Обновлено, поскольку my_sql устарела

Вот сообщение о переполнении стека о том, как это сделать ...

Можносоздать базу данных с использованием PDO в PHP

0 голосов
/ 05 августа 2011

Вы не можете создать нового пользователя без входа в систему.

Вы можете создать базу данных с учетной записью root или пользователем с привилегиями

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...