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

Use bancos de dados relacionais MySQL no Ubuntu 10.04 LTS (Lucid)


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 em um Ubuntu 10.04 LTS (Lucid) Linode. Para os propósitos deste tutorial, vamos supor que você seguiu os passos descritos em nosso Configurando e Protegendo uma Instância de Computação, que seu sistema está atualizado e que você fez login em seu Linode como root via SSH. Se você estiver executando essas etapas como um usuário padrão com privilégios sudo, lembre-se de acrescentar “sudo” aos comandos mostrados abaixo.

Configuração básica do sistema


Certifique-se de que seu /etc/hosts arquivo contém valores sensíveis. No arquivo de exemplo abaixo, você substituiria “12.34.56.78” pelo endereço IP do seu Linode e “servername.example.com” pelo nome de domínio totalmente qualificado (FQDN) do seu Linode. É aconselhável usar algo único e memorável para “servername” neste arquivo.
Arquivo:/ etc/hosts
1
2
127.0.0.1 localhost.localdomain localhost
12.34.56.78 servername.example.com servername

Em seguida, certifique-se de que o nome de host do seu Linode esteja definido para o valor curto que você especificou em /etc/hosts :
echo "servername" > /etc/hostname
hostname -F /etc/hostname

Para garantir que o universe repositórios estão habilitados, modifique seu /etc/apt/sources.list para espelhar o arquivo de exemplo abaixo.
Arquivo:/ etc/apt/sources.list
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
## main & restricted repositories
deb http://us.archive.ubuntu.com/ubuntu/ lucid main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ lucid main restricted

deb http://security.ubuntu.com/ubuntu lucid-security main restricted
deb-src http://security.ubuntu.com/ubuntu lucid-security main restricted

## universe repositories
deb http://us.archive.ubuntu.com/ubuntu/ lucid universe
deb-src http://us.archive.ubuntu.com/ubuntu/ lucid universe
deb http://us.archive.ubuntu.com/ubuntu/ lucid-updates universe
deb-src http://us.archive.ubuntu.com/ubuntu/ lucid-updates universe

deb http://security.ubuntu.com/ubuntu lucid-security universe
deb-src http://security.ubuntu.com/ubuntu lucid-security universe

Instalando o MySQL


Certifique-se de que seus repositórios de pacotes e programas instalados estejam atualizados emitindo os seguintes comandos:
apt-get update
apt-get upgrade --show-upgraded

Comece emitindo o seguinte comando no seu terminal:
apt-get install mysql-server

Você será solicitado a definir uma senha para o usuário root do MySQL. Escolha uma senha forte e guarde-a em um local seguro para referência futura.



O pacote do servidor MySQL será instalado em seu servidor, juntamente com as dependências e bibliotecas cliente. Após instalar o MySQL, é recomendado que você execute mysql_secure_installation para ajudar 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

Depois de executar mysql_secure_installation , o MySQL está seguro e pronto para ser configurado.

Configurando o MySQL


Por padrão, o MySQL faz algumas suposições sobre seu ambiente de servidor em relação à memória. Para configurar o MySQL de forma mais conservadora, você precisará editar algumas configurações em seu arquivo de configuração. Seu arquivo deve se parecer com o seguinte:
Arquivo:/ etc/mysql/my.cnf
1
2
3
4
5
6
key_buffer = 16M
max_allowed_packet = 1M
thread_stack = 64K
table_cache = 4
sort_buffer = 64K
net_buffer_length = 2K

Essas configurações são apenas valores sugeridos para um ambiente com pouca memória; sinta-se à vontade para ajustá-los aos valores apropriados para o seu servidor. Consulte a seção “Mais informações” no final deste tutorial para obter recursos adicionais sobre este tópico.

O MySQL será vinculado ao localhost (127.0.0.1) por padrão. Consulte nosso guia de acesso remoto seguro MySQL para obter informações sobre como conectar seus bancos de dados com clientes locais.

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.

Usando 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 34
Server version: 5.1.41-3ubuntu12 (Ubuntu)

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

mysql>

Se você esqueceu sua senha de root, use a ferramenta de reconfiguração de pacote para alterar essa senha:
dpkg-reconfigure mysql-server-5.1

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);

Isso cria uma tabela com um campo de ID do cliente do tipo INT para inteiro (incrementado automaticamente para novos registros e usado como chave primária), além de dois campos para armazenar o nome do cliente.

Por padrão, o acesso aos bancos de dados será limitado às conexões do localhost. Para administrar seus bancos de dados com segurança de um local remoto, siga nosso guia para administrar o mysql com segurança com um túnel SSH. Não é não uma boa prática para executar o MySQL em seu endereço IP público, a menos que você tenha uma boa razão para fazê-lo.

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