Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cách lập trình tạo cơ sở dữ liệu MySQL trên gói lưu trữ Linux dùng chung

Cảm ơn @Alex C, người đã đưa tôi đi đúng hướng. Những điều sau đây sẽ hoạt động với nhiều gói lưu trữ được chia sẻ, nhưng bạn sẽ muốn kiểm tra chính sách của họ về điều này trước tiên. Tôi đã viết lại cho tôi một phiếu hỗ trợ công nghệ và nói, "Bạn phải tự động hóa thông qua một tập lệnh cpanel." Vì vậy, đây là những gì đây.

Trong ví dụ dưới đây, tôi đã mua root.com làm tên miền gốc chính trong gói lưu trữ được chia sẻ của mình. Tôi muốn thiết lập cơ sở dữ liệu có tên "user_myexample" với mật khẩu "myexample" được chỉ định với đầy đủ đặc quyền cho người dùng "user_myexamp". Nếu tiền tố "user_" và "myexamp" trông kỳ lạ - đó là do cpanel có tiền tố dựa trên tài khoản người dùng của người dùng root trong cpanel và tên người dùng cơ sở dữ liệu chỉ có thể có tối đa 7 ký tự.

Để kết nối với Cpanel để thực hiện điều này, tôi đã nhập URL trang chủ của cpanel (thay đổi theo gói lưu trữ) để nó có thể được phân tích cú pháp và sử dụng lại. Ngoài ra, tôi đã cung cấp thông tin người dùng / pass cpanel root.com của mình.

Các câu lệnh echo chỉ là phản hồi đầu ra cho dù mỗi yêu cầu HTTP GET có hoạt động hay không. Bạn có thể muốn kiểm tra điều đó để xem liệu có điều gì bạn có thể phân tích cú pháp từ đầu ra đó để thành công / thất bại hay không.

Lưu ý rằng một số gói lưu trữ chặn file_get_contents kết nối với URL, vì vậy bạn có thể phải chuyển đổi bằng fopen ($ sURL, 'r') hoặc API Curl.

<?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. Khai báo socket trong Ruby on Rails database.yml là gì?

  2. Cách lấy ngày và giờ hiện tại trong MySQL

  3. Tạo ứng dụng web từ Scratch bằng Python Flask và MySQL:Phần 2

  4. cách đặt đồng hồ đếm ngược để không đặt lại khi làm mới trang

  5. Chuyển đổi thành varchar hoặc varchar thành int khi so sánh trong MySQL có nhanh hơn không?