Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Cara Membuat Database MySQL Secara Terprogram di Paket Hosting Linux Bersama

Terima kasih kepada @Alex C yang membuat saya berada di jalur yang benar. Berikut ini akan berfungsi dengan banyak paket hosting bersama, tetapi Anda harus memeriksa kebijakan mereka tentang ini terlebih dahulu. Milik saya menulis saya kembali di tiket dukungan teknis dan berkata, "Anda harus mengotomatisasi melalui skrip cpanel." Jadi, begitulah.

Pada contoh di bawah ini, saya akan membeli root.com sebagai domain root utama dari paket hosting bersama saya. Saya ingin mengatur database bernama "user_myexample" dengan kata sandi "myexample" yang diberikan dengan hak penuh untuk pengguna "user_myexamp". Jika awalan "user_" dan "myexamp" terlihat aneh -- itu karena cpanel memiliki awalan berdasarkan akun pengguna pengguna root ke dalam cpanel, dan nama pengguna database hanya boleh maksimal 7 karakter.

Untuk terhubung ke Cpanel untuk mewujudkannya, saya memasukkan URL beranda cpanel (yang bervariasi dengan paket hosting) sehingga dapat diuraikan dan digunakan kembali. Juga, saya memberikan informasi pengguna/pass cpanel root.com saya.

Pernyataan gema hanyalah respons keluaran apakah setiap permintaan HTTP GET berfungsi atau tidak. Anda mungkin ingin memeriksanya untuk melihat apakah ada sesuatu yang dapat Anda urai dari hasil tersebut untuk keberhasilan/kegagalan.

Perhatikan beberapa paket hosting memblokir file_get_contents yang terhubung ke URL, jadi Anda mungkin harus beralih dengan fopen($sURL, 'r') atau 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. Kueri SELECT ini membutuhkan waktu 180 detik untuk diselesaikan

  2. MySQL Query Tuning - Mengapa menggunakan nilai dari variabel jauh lebih lambat daripada menggunakan literal?

  3. PDO::rowCount VS COUNT(*)

  4. Cara mendapatkan sertifikat Amazon MySQL RDS

  5. LAST_DAY() Contoh – MySQL