MySQLi - Administração
Executando e desligando o servidor MySQLi
O MySQLi é estendido do MySQL, portanto, primeiro verifique se o servidor MySQL está funcionando ou não. Você pode usar o seguinte comando para verificar isso -
ps -ef | grep mysqld
Se o seu MySql estiver rodando, você verá mysqldprocesso listado em seu resultado. Se o servidor não estiver rodando, você pode iniciá-lo usando o seguinte comando -
[email protected]# cd /usr/bin
./safe_mysqld &
Agora, se você deseja desligar um servidor MySQL que já está em execução, pode fazê-lo usando o seguinte comando -
[email protected]# cd /usr/bin
./mysqladmin -u root -p shutdown
Enter password: ******
Configurando uma conta de usuário MySQLi
Para adicionar um novo usuário ao MySQLi, que é uma versão aprimorada do MySQL, você só precisa adicionar uma nova entrada para user tabela no banco de dados mysql.
Abaixo está um exemplo de adição de novo usuário guest com os privilégios SELECT, INSERT e UPDATE com a senha guest123; a consulta SQL é -
[email protected]# mysql -u root -p
Enter password:*******
mysql> use mysql;
Database changed
mysql> INSERT INTO user (
host, user, password, select_priv, insert_priv, update_priv)
VALUES ('localhost', 'guest', PASSWORD('guest123'), 'Y', 'Y', 'Y');
Query OK, 1 row affected (0.20 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 1 row affected (0.01 sec)
mysql> SELECT host, user, password FROM user WHERE user = 'guest';
+-----------+---------+------------------+
| host | user | password |
+-----------+---------+------------------+
| localhost | guest | 6f8c114b58f2ce9e |
+-----------+---------+------------------+
1 row in set (0.00 sec)
Ao adicionar um novo usuário, lembre-se de criptografar a nova senha usando a função PASSWORD () fornecida pelo MySQL. Como você pode ver no exemplo acima, a senha mypass é criptografada para 6f8c114b58f2ce9e.
Observe a instrução FLUSH PRIVILEGES. Isso diz ao servidor para recarregar as tabelas de permissões. Se você não o usar, não será capaz de se conectar ao mysql usando a nova conta de usuário pelo menos até que o servidor seja reinicializado.
Você também pode especificar outros privilégios para um novo usuário, definindo os valores das seguintes colunas na tabela do usuário para 'Y' ao executar a consulta INSERT ou você pode atualizá-los posteriormente usando a consulta UPDATE.
- Select_priv
- Insert_priv
- Update_priv
- Delete_priv
- Create_priv
- Drop_priv
- Reload_priv
- Shutdown_priv
- Process_priv
- File_priv
- Grant_priv
- References_priv
- Index_priv
- Alter_priv
Outra maneira de adicionar conta de usuário é usando o comando GRANT SQL; o exemplo a seguir adicionará o usuáriozara com senha zara123 para um banco de dados específico chamado TUTORIALS.
[email protected]# mysql -u root -p password;
Enter password:*******
mysql> use mysql;
Database changed
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
-> ON TUTORIALS.*
-> TO 'zara'@'localhost'
-> IDENTIFIED BY 'zara123';
Isso também criará uma entrada na tabela do banco de dados mysql chamada user.
NOTE - O MySQL não termina um comando até que você coloque um ponto e vírgula (;) no final do comando SQL.
A configuração do arquivo /etc/my.cnf
Na maioria dos casos, você não deve tocar neste arquivo. Por padrão, ele terá as seguintes entradas -
[mysqld]
datadir = /var/lib/mysql
socket = /var/lib/mysql/mysql.sock
[mysql.server]
user = mysql
basedir = /var/lib
[safe_mysqld]
err-log = /var/log/mysqld.log
pid-file = /var/run/mysqld/mysqld.pid
Aqui, você pode especificar um diretório diferente para o log de erros, caso contrário, você não deve alterar nenhuma entrada nesta tabela.
Comando administrativo do MySQLi
Aqui está a lista de comandos importantes do MySQLi, que você usará de vez em quando para trabalhar com o banco de dados MySQL -
USE Databasename - Isso será usado para selecionar um banco de dados específico na área de trabalho do MySQLi.
SHOW DATABASES - Lista os bancos de dados que podem ser acessados pelo DBMS MySQLi.
SHOW TABLES - Mostra as tabelas no banco de dados, uma vez que um banco de dados foi selecionado com o comando use.
SHOW COLUMNS FROM tablename - Mostra os atributos, tipos de atributos, informações chave, se NULL é permitido, padrões e outras informações para uma tabela.
SHOW INDEX FROM tablename - Apresenta os detalhes de todos os índices da tabela, incluindo a CHAVE PRIMÁRIA.
SHOW TABLE STATUS LIKE tablename\G - Relata detalhes do desempenho e estatísticas do DBMS MySQLi.