English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Neste tutorial, você aprenderá como se conectar ao servidor MySQL usando PHP.
Para armazenar ou acessar dados em um banco de dados MySQL, você primeiro precisa se conectar ao servidor do banco de dados MySQL. O PHP oferece duas maneiras diferentes de se conectar ao servidor MySQL:MySQLi(Melhorado MySQL) ePDO(PHP Data Objects) extensão.
Embora o nome PDO sugira maior portabilidade e suporte a mais de doze bases de dados diferentes, o nome MySQLi sugere que ele suporta apenas o banco de dados MySQL. No entanto, a extensão MySQLi oferece uma maneira conveniente de se conectar ao servidor do banco de dados MySQL e executar consultas nele. Ambos PDO e MySQLi fornecem uma API orientada a objetos, mas o MySQLi também oferece uma API procedimental, que é relativamente fácil de entender para iniciantes.
Dica:Em comparação com a extensão PDO, a extensão MySQLi do PHP oferece tanto velocidade quanto vantagens funcionais, portanto, para projetos específicos do MySQL, pode ser uma escolha melhor.
No PHP, você pode usar a função mysqli_connect() para executar essa operação facilmente. Todas as comunicações entre o PHP e o servidor de banco de dados MySQL são realizadas por meio dessa conexão. A seguir estão as três sintaxes básicas para conectar ao servidor de banco de dados MySQL usando MySQLi e PDO:
$link = mysqli_connect("hostname", "username", "password", "database");
$mysqli = new mysqli("hostname", "username", "password", "database");
$pdo = new PDO("mysql:host=hostname;dbname=database", "username", "password");
No sintaxe acima, o parâmetro hostname especifica o nome do host (por exemplo, localhost) ou o endereço IP do servidor MySQL, enquanto os parâmetros username e password especificam as credenciais de acesso ao servidor MySQL. O parâmetro banco de dados (se fornecido) especifica o banco de dados padrão a ser usado para executar consultas MySQL.
O exemplo a seguir demonstra como usar MySQLi (programaeorientado a objetosmodo) e a extensão PDO para conectar ao servidor de banco de dados MySQL.
<?php /* Tente conectar ao servidor MySQL. Suponha que você esteja executando MySQL. Servidor com configurações padrão (usuário sem senha "root") */ $link = mysqli_connect("localhost", "root", ""); // Verificar conexão if($link === false){ die("Erro: Não foi possível conectar." . mysqli_connect_error()); } //Imprimir informações do host echo "Conexão bem-sucedida. Informações do host: " . mysqli_get_host_info($link); ?>
<?php /* Tente conectar ao servidor MySQL. Suponha que você esteja executando MySQL. Servidor com configurações padrão (usuário sem senha "root") */ $mysqli = new mysqli("localhost", "root", "", "demo"); // Verificar conexão if($mysqli === false){ die("Erro: Não foi possível conectar." . $mysqli->connect_error); } //Imprimir informações do host echo "Conexão bem-sucedida. Informações do host: ". $mysqli->host_info; ?>
<?php /*Tente conectar ao servidor MySQL. Suponha que você esteja executando MySQL. Servidor com configurações padrão (usuário sem senha "root") */ try{ $pdo = new PDO("mysql:host=localhost", "root", "); //Definir o modo de erro PDO como exceção $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); //Imprimir informações do host echo "Conexão bem-sucedida. Informações do host: ". $pdo->getAttribute(constant("PDO::ATTR_CONNECTION_STATUS")); } catch(PDOException $e){ die("Erro: Não foi possível conectar. ". $e->getMessage()); } ?>
Atenção: O nome de usuário padrão do servidor de banco de dados MySQL é root, sem senha. No entanto, para evitar que o banco de dados seja invadido e acessado sem autorização, você deve definir uma senha para a conta MySQL.
Dica:Definir o atributo PDO::ATTR_ERRMODE como PDO::ERRMODE_EXCEPTION informará o PDO para lançar exceções ao ocorrer erros no banco de dados.
Após a execução do script, a conexão com o servidor de banco de dados MySQL será fechada automaticamente. No entanto, se você quiser fechá-lo antes, basta chamar a função PHP mysqli_close().
<?php /*Tente conectar ao servidor MySQL. Suponha que você esteja executando MySQL. Servidor com configurações padrão (usuário sem senha "root")*/ $link = mysqli_connect("localhost", "root", ""); // Verificar conexão if($link === false){ die("Erro: Não foi possível conectar." . mysqli_connect_error()); } // Imprimir informações do host echo "Conexão bem-sucedida. Informações do host: " . mysqli_get_host_info($link); // Fechar conexão mysqli_close($link); ?>
<?php /*Tente conectar ao servidor MySQL. Suponha que você esteja executando MySQL. Servidor com configurações padrão (usuário sem senha "root") */ $mysqli = new mysqli("localhost", "root", "", "demo"); // Verificar conexão if($mysqli === false){ die("Erro: Não foi possível conectar." . $mysqli->connect_error); } // Imprimir informações do host echo "Conexão bem-sucedida. Informações do host: " . $mysqli->host_info; // Fechar conexão $mysqli->close(); ?>
<?php /* Tente conectar ao servidor MySQL. Suponha que você esteja executando MySQL. Servidor com configurações padrão (usuário sem senha "root") */ try{ $pdo = new PDO("mysql:host=localhost;dbname=demo", "root", ""); //Definir o modo de erro PDO como exceção $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); //Imprimir informações do host echo "Conexão bem-sucedida. Informações do host: " . $pdo->getAttribute(constant("PDO::ATTR_CONNECTION_STATUS")); } catch(PDOException $e){ die("Erro: Não foi possível conectar." . $e->getMessage()); } //Fechar conexão unset($pdo); ?>