Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да създадете програмно MySQL бази данни на споделени Linux хостинг планове

Благодаря на @Alex C, който ме насочи към правилния път. Следното ще работи с много планове за споделен хостинг, но първо ще искате да проверите техните политики за това. Моят ми написа обратно в билет за техническа поддръжка и каза:"Трябва да автоматизирате чрез cpanel скрипт." И така, това е това.

В примера по-долу вече бих закупил root.com като основен основен домейн на моя споделен хостинг план. Бих искал да настроя база данни с име "user_myexample" с парола "myexample", присвоена с пълни привилегии на потребител "user_myexamp". Ако префиксът "user_" и "myexamp" изглеждат странни - това е, защото cpanel има префикс, базиран на потребителския акаунт на root потребител в cpanel, а потребителското име на базата данни може да бъде само 7 знака.

За да се свържа с Cpanel, за да се случи това, въведох URL адрес на началната страница на cpanel (който варира в зависимост от хостинг плана), за да може да бъде анализиран и използван повторно. Освен това предоставих информацията за потребителя/пропуска на cpanel на моя root.com.

Инструкциите за ехо са само изходният отговор дали всяка HTTP GET заявка е работила или не. Може да искате да проверите това, за да видите дали има нещо, което можете да анализирате от този изход за успех/неуспех.

Обърнете внимание, че някои хостинг планове блокират file_get_contents свързването с URL, така че може да се наложи да превключите с fopen($sURL, 'r') или Curl API.

<?php

// @ input vars
$sPastedCpanelHomepageURL = 'https://root.com:2083/frontend/x3/index.html';
$sNewDB = 'myexample';
$sNewDBUser = 'myexamp'; // must be 7 chars max
$sNewDBPass = 'myexample';
$sCPanelUser = 'user';
$sCPanelPass = 'pass';

// @ processing
$sCP = dirname($sPastedCpanelHomepageURL);
$sCP = str_replace('://','://' . $sCPanelUser . ':' . $sCPanelPass . '@',$sCP);

$sPrefix = substr($sCPanelUser, 0, 7) . '_';

$sTask1 = '/sql/addb.html?';
$sTask2 = '/sql/adduser.html?';
$sTask3 = '/sql/addusertodb.html?';

$sNewDB = urlencode($sNewDB);
$sNewDBUser = urlencode($sNewDBUser);
$sNewDBPass = urlencode($sNewDBPass);
$sCPanelUser = urlencode($sCPanelUser);
$sCPanelPass = urlencode($sCPanelPass);

$sNewDBUser = substr($sNewDBUser, 0, 7);

$asData1 = array(
  'db' => $sNewDB
);
$sData1 = http_build_query($asData1);
$s = file_get_contents($sCP . $sTask1 . $sData1);
echo "$s\n";

$asData2 = array(
  'user' => $sPrefix . $sNewDBUser,
  'pass' => $sNewDBPass,
  'pass2' => $sNewDBPass
);
$sData2 = http_build_query($asData2);
$s = file_get_contents($sCP . $sTask2 . $sData2);
echo "$s\n";

$asData3 = array(
  'user' => $sPrefix . $sNewDBUser,
  'db' => $sPrefix . $sNewDB,
  'update' => '',
  'ALL' => 'ALL'
);
$sData3 = http_build_query($asData3);
$s = file_get_contents($sCP . $sTask3 . $sData3);
echo "$s\n";


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Схема за експортиране на MySql без данни

  2. Емоджитата не се вмъкват в възела на базата данни js mysql

  3. Sum php масив (създаден от mysql резултати) в зависимост от стойностите на mysql в друга колона на mysql

  4. MySQL Изберете редове при първото появяване на всяка уникална стойност

  5. Вмъкнете няколко елемента в един идентификатор на MySQL от полето за отметка за въвеждане на PHP формуляр