Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Usando bancos de dados relacionais MySQL no Arch Linux


O MySQL é um sistema de gerenciamento de banco de dados popular, usado como provedor de armazenamento de dados para milhares de aplicativos da Web e de servidor. Este guia ajudará os iniciantes a começarem com o MySQL no Arch Linux. Se você deseja implantar o MySQL como parte de uma pilha de aplicativos, considere nossos guias LEMP e LAMP.

Configuração do sistema


Certifique-se de que seu /etc/hosts arquivo tem entradas apropriadas, semelhantes às mostradas abaixo. Substitua “12.34.56.78” pelo endereço público do seu Linode, “servername” pelo seu nome de host curto e “mydomain.com” pelo nome de domínio do seu sistema.
Arquivo:/ etc/hosts
127.0.0.1 localhost.localdomain localhost
12.34.56.78 servername.mydomain.com servername

Defina o nome de host do seu sistema configurando o HOSTNAME= valor no /etc/rc.conf Arquivo.

Instalar o MySQL


Emita os seguintes comandos para atualizar seu sistema e instalar o MySQL:
pacman -Syu
pacman -S mysql

Você vai querer adicionar o mysqld daemon para o DAEMONS-() array no final do /etc/rc.conf para garantir que o processo mysql comece após o próximo ciclo de reinicialização.

O pacote do servidor MySQL será instalado em seu servidor, juntamente com as dependências e bibliotecas cliente. Inicie o MySQL executando o seguinte comando:
/etc/rc.d/mysqld start

Configurar MySQL


Após instalar o MySQL, é recomendado que você execute mysql_secure_installation , um programa que ajuda a proteger o MySQL. Ao executar mysql_secure_installation , você terá a oportunidade de alterar a senha de root do MySQL, remover contas de usuários anônimos, desabilitar logins de root fora do localhost e remover bancos de dados de teste. É recomendável que você responda sim a essas opções. Se você for solicitado a recarregar as tabelas de privilégios, selecione sim. Execute o seguinte comando para executar o programa:
mysql_secure_installation

Por padrão, o MySQL escuta apenas conexões internas. Se você planeja se conectar ao seu banco de dados via TCP/IP, você precisará remover ou comentar (por exemplo, prefixar a linha com um # ) adicione o bind-address linha no arquivo my.cnf. do seguinte modo:
Arquivo:/ etc/mysql/my.cnf
1
2
# skip-networking
bind-address - 127.0.0.1

Permitir acesso irrestrito ao MySQL em um IP público não é recomendado, mas você pode alterar o endereço em que ele escuta modificando o bind-address parâmetro. Se você decidir vincular o MySQL ao seu IP público, você deve implementar regras de firewall que só permitem conexões de endereços IP específicos.

Consulte a seção “Mais informações” no final deste tutorial para obter recursos adicionais que abordam a configuração do MySQL. Emita o seguinte comando para reiniciar o daemon:
/etc/rc.d/mysqld restart

Consulte nosso guia de acesso remoto seguro MySQL para obter informações sobre como conectar seus bancos de dados com clientes locais.

Usar MySQL


A ferramenta padrão para interagir com o MySQL é o mysql programa cliente. Para começar, emita o seguinte comando no seu prompt:
mysql -u root -p

Você será solicitado a inserir a senha do usuário root do MySQL. Digite a senha que você atribuiu quando instalou o MySQL e você verá a tela do monitor MySQL:
    Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.5.9-log Source distribution

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

Para gerar uma lista de comandos para o prompt do MySQL, digite \h :
    List of all MySQL commands:
Note that all text commands must be first on line and end with ';'
?         (\?) Synonym for `help'.
clear     (\c) Clear the current input statement.
connect   (\r) Reconnect to the server. Optional arguments are db and host.
delimiter (\d) Set statement delimiter.
edit      (\e) Edit command with $EDITOR.
ego       (\G) Send command to mysql server, display result vertically.
exit      (\q) Exit mysql. Same as quit.
go        (\g) Send command to mysql server.
help      (\h) Display this help.
nopager   (\n) Disable pager, print to stdout.
notee     (\t) Don't write into outfile.
pager     (\P) Set PAGER [to_pager]. Print the query results via PAGER.
print     (\p) Print current command.
prompt    (\R) Change your mysql prompt.
quit      (\q) Quit mysql.
rehash    (\#) Rebuild completion hash.
source    (\.) Execute an SQL script file. Takes a file name as an argument.
status    (\s) Get status information from the server.
system    (\!) Execute a system shell command.
tee       (\T) Set outfile [to_outfile]. Append everything into given outfile.
use       (\u) Use another database. Takes database name as argument.
charset   (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.
warnings  (\W) Show warnings after every statement.
nowarning (\w) Don't show warnings after every statement.

For server side help, type 'help contents'

mysql>

Vamos criar um banco de dados e atribuir um usuário a ele. Emita os seguintes comandos no prompt do MySQL:
CREATE DATABASE testdb;
CREATE USER 'testuser'@localhost IDENTIFIED BY 'CHANGEME';
GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@localhost;
exit

Agora vamos logar novamente no cliente MySQL como testuser e crie uma tabela de amostra chamada "clientes". Emita os seguintes comandos:
mysql -u testuser -p
USE testdb;
CREATE TABLE customers (customer_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, first_name TEXT, last_name TEXT);
exit

Isso cria uma tabela com um campo de ID do cliente do tipo INT para inteiro (incrementado automaticamente para novos registros, usado como chave primária), além de dois campos para armazenar o nome do cliente. É claro que você provavelmente deseja armazenar muito mais informações do que isso para um cliente, mas é um bom exemplo de um caso comum.

Como redefinir a senha raiz do MySQL


Se você esqueceu sua senha de root do MySQL, você pode redefini-la emitindo os seguintes comandos:
/etc/rc.d/mysqld stop
mysqld_safe --skip-grant-tables &
mysql -u root

A seguinte parte da redefinição de senha agora será feita no programa cliente MySQL:
USE mysql;
UPDATE user SET PASSWORD-PASSWORD("CHANGEME") WHERE User-'root';
FLUSH PRIVILEGES;
exit

Por último, reinicie o MySQL emitindo o seguinte comando:
/etc/rc.d/mysqld restart

Ajustando o MySQL


O MySQL Tuner é uma ferramenta útil que se conecta a uma instância em execução do MySQL e fornece recomendações de configuração com base na carga de trabalho. Idealmente, a instância do MySQL deve estar operando por pelo menos 24 horas antes de executar o sintonizador. Quanto mais tempo a instância estiver em execução, melhor será o conselho que o MySQL Tuner fornecerá.

Para instalar o MySQL Tuner emita os seguintes comandos:
pacman -S wget
wget http://mysqltuner.pl/mysqltuner.pl
chmod 755 mysqltuner.pl

Para executar o MySQL Tuner basta digitar:
./mysqltuner.pl

Observe que esta ferramenta foi projetada para fornecer sugestões de configuração e é um excelente ponto de partida. Seria prudente realizar pesquisas adicionais para ajustar as configurações com base nos aplicativos que utilizam o MySQL*. *

Mais informações


Você pode querer consultar os seguintes recursos para obter informações adicionais sobre este tópico. Embora estes sejam fornecidos na esperança de que sejam úteis, observe que não podemos garantir a precisão ou pontualidade dos materiais hospedados externamente.
  • Manual de referência do MySQL 5.1
  • Manual PHP MySQL
  • Exemplos de Perl DBI para DBD::mysql
  • Guia do usuário MySQLdb