Como gerenciar o banco de dados MySQL? Comandos SSH para gerenciar servidores MySQL

como gerenciarbanco de dados MySQL? Gerenciamento de comandos SSHMySQL服务器

MySQL 管理


Iniciar e parar o servidor MySQL

Primeiro, precisamos verificar se o servidor MySQL está ativo executando o seguinte comando:

ps -ef | grep mysqld

Se o MySQL já foi iniciado, o comando acima produzirá uma lista de processos do mysql, se o mysql não for iniciado, você pode usar o seguinte comando para iniciar o servidor mysql:

root@host# cd /usr/bin
./mysqld_safe &

Se você deseja desligar o servidor MySQL atualmente em execução, você pode executar o seguinte comando:

root@host# cd /usr/bin
./mysqladmin -u root -p shutdown
Enter password: ******

Configurações do usuário MySQL

Se você precisar adicionar um usuário MySQL, basta adicionar o novo usuário à tabela de usuários no banco de dados mysql.

O seguinte é um exemplo de adição de um usuário, o nome do usuário é guest, a senha é guest123 e o usuário está autorizado a realizar as operações SELECT, INSERT e UPDATE:

root@host# 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 usuário, observe que a senha é criptografada usando a função PASSWORD() fornecida pelo MySQL.Você pode ver no exemplo acima que a senha de usuário criptografada é: 6f8c114b58f2ce9e.

Nota:No MySQL 5.7, a senha da tabela user foi substituída porstring_autenticação.

Nota:Esteja ciente da necessidade de implementar PRIVILÉGIOS DE LIMPEZA declaração.Depois que este comando for executado, a tabela de concessões será recarregada.

Se você não usar este comando, não poderá usar o usuário recém-criado para se conectar ao servidor mysql, a menos que reinicie o servidor mysql.

Ao criar um usuário, você pode especificar permissões para o usuário. Na coluna de permissão correspondente, defina-a como 'Y' na instrução de inserção. A lista de permissões de usuário é a seguinte:

  • Selecione_priv
  • Inserir_priv
  • Atualização_priv
  • Excluir_priv
  • Criar_priv
  • drop_priv
  • Recarregar_priv
  • desligamento_priv
  • Processo_priv
  • Arquivo_priv
  • Conceder_priv
  • Referências_priv
  • Índice_priv
  • Alter_priv

Outra forma de adicionar usuários é através do comando GRANT do SQL, o próximo comando adicionará o usuário zara ao banco de dados TUTORIALS especificado, e a senha é zara123.

root@host# 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';

O comando acima criará um registro de informações do usuário na tabela de usuários no banco de dados mysql.

Nota: As instruções SQL do MySQL são terminadas com um ponto e vírgula (;).


configuração do arquivo /etc/my.cnf

Em circunstâncias normais, você não precisa modificar o arquivo de configuração, a configuração padrão do arquivo é a seguinte:

[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

No arquivo de configuração, você pode especificar o diretório onde estão armazenados os diferentes arquivos de log de erros. Geralmente, não é necessário alterar essas configurações.


Comandos para gerenciar o MySQL

A seguir estão listados os comandos comumente usados ​​no processo de uso do banco de dados Mysql:

  • USO nome de armazenamento de dados :
    Selecione o banco de dados Mysql a ser operado.Após usar este comando, todos os comandos do Mysql são apenas para este banco de dados.
    mysql> use chenweiliang;
    Database changed
  • MOSTRAR BANCOS DE DADOS: 
    Lista a lista de banco de dados do sistema de gerenciamento de banco de dados MySQL.
    mysql> SHOW DATABASES;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | chenweiliang             |
    | cdcol              |
    | mysql              |
    | onethink           |
    | performance_schema |
    | phpmyadmin         |
    | test               |
    | wecenter           |
    | wordpress          |
    +--------------------+
    10 rows in set (0.02 sec)
  • MOSTRAR TABELAS:
    Exiba todas as tabelas do banco de dados especificado Antes de usar este comando, você precisa usar o comando use para selecionar o banco de dados a ser operado.
    mysql> use chenweiliang;
    Database changed
    mysql> SHOW TABLES;
    +------------------+
    | Tables_in_chenweiliang |
    +------------------+
    | employee_tbl     |
    | chenweiliang_tbl       |
    | tcount_tbl       |
    +------------------+
    3 rows in set (0.00 sec)
  • MOSTRAR COLUNAS DE 数据 表:
    Exibe atributos da tabela de dados, tipos de atributos, informações de chave primária, se é NULL, valor padrão e outras informações.
    mysql> SHOW COLUMNS FROM chenweiliang_tbl;
    +-----------------+--------------+------+-----+---------+-------+
    | Field           | Type         | Null | Key | Default | Extra |
    +-----------------+--------------+------+-----+---------+-------+
    | chenweiliang_id       | int(11)      | NO   | PRI | NULL    |       |
    | chenweiliang_title    | varchar(255) | YES  |     | NULL    |       |
    | chenweiliang_author   | varchar(255) | YES  |     | NULL    |       |
    | submission_date | date         | YES  |     | NULL    |       |
    +-----------------+--------------+------+-----+---------+-------+
    4 rows in set (0.01 sec)
  • MOSTRAR ÍNDICE DE 数据 表:
    Exiba as informações detalhadas do índice da tabela de dados, incluindo PRIMARY KEY (chave primária).
    mysql> SHOW INDEX FROM chenweiliang_tbl;
    +------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
    | Table      | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
    +------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
    | chenweiliang_tbl |          0 | PRIMARY  |            1 | chenweiliang_id   | A         |           2 |     NULL | NULL   |      | BTREE      |         |               |
    +------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
    1 row in set (0.00 sec)
  • SHOW TABLE STATUS LIKE [FROM db_name] [LIKE 'pattern'] \G:
    Este comando produzirá o desempenho e as estatísticas do sistema de gerenciamento de banco de dados Mysql.
    mysql> SHOW TABLE STATUS  FROM chenweiliang;   # 显示数据库 chenweiliang 中所有表的信息
    
    mysql> SHOW TABLE STATUS from chenweiliang LIKE 'chenweiliang%';     # 表名以chenweiliang开头的表的信息
    mysql> SHOW TABLE STATUS from chenweiliang LIKE 'chenweiliang%'\G;   # 加上 \G,查询结果按列打印

Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) compartilhado "Como gerenciar o banco de dados MySQL? Comandos SSH para Gerenciar Servidores MySQL", irá ajudá-lo.

Bem-vindo a compartilhar o link deste artigo:https://www.chenweiliang.com/cwl-453.html

Bem-vindo ao canal Telegram do blog de Chen Weiliang para receber as últimas atualizações!

🔔 Seja o primeiro a obter o valioso "Guia de uso da ferramenta de IA de marketing de conteúdo ChatGPT" no diretório superior do canal! 🌟
📚 Este guia contém um valor enorme, 🌟Esta é uma oportunidade rara, não perca! ⏰⌛💨
Compartilhe e curta se gostar!
Seus compartilhamentos e curtidas são nossa motivação contínua!

 

发表 评论

Seu endereço de e-mail não será publicado. 必填 项 已 用 * 标注

滚动 到 顶部