sql >> Databáze >  >> RDS >> Mysql

php připojit k mysql db v cloudu 9?

Dobře, takže žádná z výše uvedených odpovědí pro mě nefungovala, ale naštěstí se mi podařilo nastavit databázi a uvést ji do provozu vlastním způsobem a nyní mohu zadávat dotazy a úspěšně je spouštět, takže se s vámi podělím o svou metodu v naději, že na to může narazit kdokoli jiný, kdo prohledává internet, a nebude si muset procházet stejným škrábáním v hlavě jako já.

Pokud chcete rychlý přehled, přejděte na Krok 3 a odtamtud čtěte dál. Pokud jste úplný začátečník, pokračujte ve čtení, protože vás podrobně provedu.

Je třeba zmínit několik věcí:

  • Budete muset nastavit databázi prostřednictvím terminálu v Cloud 9. Předtím jsem neměl žádné zkušenosti s tím, než jsem to dělal v terminálu, ale je velmi snadné se to naučit.
  • Nemůžete ne použijte mysql funkce, musíte použít mysqli , protože mysql funkce jsou zastaralé a Cloud 9 je nebude spouštět.

Krok 1 :Nastavení MySQL na Cloud 9 (v terminálu)

Ve svém projektu otevřete Nový terminál (klikněte na záložku se znaménkem plus nad prostorem textového editoru a vyberte „Nový terminál“). V terminálu zadejte mysql-ctl start a stiskněte Enter. MySQL se spustí vzadu, ale v terminálu nedostanete žádnou odpověď.

Dále zadejte mysql-ctl cli a stiskněte Enter. Měli byste vidět nějaký text, který začíná jako Welcome to the MySQL monitor... . Gratulujeme, nastavili jste MySQL ve svém projektu Cloud 9.

Krok 2 :Vytvořte testovací databázi (v Terminálu)

Můžete skutečně pokračovat a vytvořit svou oficiální databázi, pokud chcete, ale pro tento účel vytvořím databázi, která obsahuje tabulku obsahující ID a uživatelské jméno. Zde jsou kroky k nastavení databáze a tabulky. Pokud jste dříve používali MySQL a databáze, pak by to měl být koláč, ale vysvětlím to podrobně pro ty, kteří nemusí MySQL úplně rozumět.

  1. Zadejte SHOW DATABASES; a stiskněte Enter. Zobrazí se seznam aktuálních databází v rámci vašeho projektu. Toto můžete zadat kdykoli, když budete chtít vidět seznam svých databází v aktuálním projektu.
  2. Zadejte CREATE DATABASE sample_db; a stiskněte Enter. Měli byste dostat Query OK, 1 Row affected. což znamená, že dotaz byl úspěšný. Databázi si můžete pojmenovat, jak chcete, ale pro tento malý návod jsem ji pojmenoval sample_db .
  3. Zadejte USE sample_db; a stiskněte Enter. Tím vyberete sample_db ze seznamu databází.
  4. Zadejte CREATE TABLE users (id INT(11), username VARCHAR(20)); a stiskněte Enter. Tím se vytvoří tabulka s názvem users se dvěma sloupci:id a username . Číslo v závorce představuje limit počtu znaků, který bude sloupec ukládat do databáze. V tomto případě například username nebude obsahovat řetězec delší než 20 znaků.
  5. Zadejte INSERT INTO users (id, username) VALUES (1, "graham12"); a stiskněte Enter. Tím se přidá id 1 a uživatelské jméno graham12 ve stole. Protože id sloupec je INT , nedáváme kolem něj uvozovky.
  6. Zadejte SELECT * FROM users; a stiskněte Enter. Tím se zobrazí vše, co je v users stůl. Jediným záznamem by mělo být to, co jsme vložili z posledního kroku, který jsme právě provedli.

Krok 3 :Získejte přihlašovací údaje, které budete potřebovat pro připojení k databázi z PHP. (v Terminálu)

Nyní máme v naší tabulce nějaká data, která můžeme otestovat naše mysqli spojení s. Nejprve ale musíme získat přihlašovací údaje, které budeme potřebovat pro připojení k databázi v PHP. V Cloud 9 budeme k připojení potřebovat 5 přihlašovacích údajů:

  1. Název hostitele
  2. Uživatelské jméno
  3. Heslo
  4. Název databáze
  5. Port č.

Uživatelské jméno, heslo, název databáze a port # již prakticky znáte. Vysvětlím:

  1. Název hostitele – Zadejte SHOW VARIABLES WHERE Variable_name = 'hostname'; a stiskněte Enter. Získáte tabulku, která má 2 sloupce:Variable_name a Value . V Value ve sloupci, měli byste vidět něco jako yourUsername-yourProjectName-XXXXXXX , kde X 's jsou 7místné číslo. Zapište si toto číslo nebo si ho někam uložte. Toto je název vašeho hostitele. (Pokud získáváte rychlý přehled o tomto návodu, spusťte nový terminál a spusťte svůj mysql a vyberte databázi, kterou chcete použít, a poté zadejte SHOW VARIABLES WHERE Variable_name = 'hostname'; . Pokud jste zmateni, přečtěte si tento krok znovu od začátku.)
  2. Uživatelské jméno – Vaše uživatelské jméno, které používáte k přihlášení do Cloud 9.
  3. Heslo - Existuje NE heslo pro vaši databázi v Cloud 9.
  4. Název databáze - Toto by bylo sample_db nebo jakkoli jste pojmenovali svou databázi;
  5. Port č. - je 3306 . V Cloud 9 jsou všechny vaše projekty připojeny k 3306 . To je univerzální konstanta Cloudu 9. Nic jiného to nebude. Napište to jako celé číslo, ne jako struna. mysqli_connect() bude port # interpretovat jako long datový typ.

Poslední krok :Připojte se k databázi pomocí PHP! (pomocí PHP)

Otevřete soubor PHP a pojmenujte jej, jak chcete.

Budu předstírat, že název mého hostitele je graham12-sample_db-1234567 pro tento příklad a že to je to, co moje data vypadají takto:

  • Název hostitele:"graham12-sample_db-1234567"
  • Uživatelské jméno:"graham12"
  • Heslo:""
  • Název databáze:"sample_db"
  • Port č.:3306

Tedy v PHP , vložte vaše odpovídajícím způsobem pověření:

<?php

    //Connect to the database
    $host = "grahamsutt12-sample_db-1234567";   //See Step 3 about how to get host name
    $user = "grahamsutt12";                     //Your Cloud 9 username
    $pass = "";                                 //Remember, there is NO password!
    $db = "sample_db";                          //Your database name you want to connect to
    $port = 3306;                               //The port #. It is always 3306

    $connection = mysqli_connect($host, $user, $pass, $db, $port)or die(mysql_error());



    //And now to perform a simple query to make sure it's working
    $query = "SELECT * FROM users";
    $result = mysqli_query($connection, $query);

    while ($row = mysqli_fetch_assoc($result)) {
        echo "The ID is: " . $row['id'] . " and the Username is: " . $row['username'];
    }

?>

Pokud dostanete výsledek a žádnou chybu, pak jste úspěšně nastavili databázi a vytvořili k ní připojení pomocí PHP v Cloud 9. Nyní byste měli být schopni zadávat všechny dotazy, které běžně můžete dělat.

Poznámka:Poslední část jsem demonstroval bez použití parametrizovaných dotazů kvůli jednoduchosti. Při práci se skutečnými webovými aplikacemi byste měli vždy používat parametrizované dotazy. Více informací o tom můžete získat zde:Připravená prohlášení MySQLi .



  1. Tvůrce dotazů nevkládá časová razítka

  2. Výchozí schéma v adrese URL připojení Oracle

  3. Porovnejte dvě databáze MySQL

  4. Nodejs s sequelize nemohl po spuštění serveru vytvořit tabulku v mysql workbench