www.samueldiasneto.com: Tutorial MySQL

<<< Voltar Avançar >>>

2. Instalando o MySQL

Usando o Debian, você pode instalar o MySQL com o apt:

Observe que a versão atual quando escrevi este tutorial era a 4.1. Provavelmente já seja outra. Em caso de dúvida, use o comando

apt-cache search mysqlserver

para procurar o pacote atual. Use o mesmo comando para procurar os outros pacotes e depois o apt-get install para instalá-los. Você deve ser o root para fazer isto.

Se você não usa o Debian, veja qual a ferramenta gerenciadora de pacotes da sua distribuição e instale os referidos pacotes.

Na pior das hipóteses vá ao site do MySQL (www.mysql.com) e baixe os pacotes para sua distribuição ou, ainda, baixe e compile a partir dos fontes (se você gosta de fazer isto).

Para verificar se o MySQL está instalado você pode executar o comando:

aranha:~# mysql --version
mysql  Ver 14.7 Distrib 4.1.11, for pc-linux-gnu (i386)
aranha:~#

o qual, como você pode ver, exibe a versão do MySQL instalado.

Você pode, ainda, digitar mysql na linha de comando e depois pressionar a tecla TAB duas vezes para que o shell exiba os comandos disponíveis que possuem a string "mysql":

aranha:~# mysql
mysql                       mysqldump                   mysqlmanager-pwgen
mysqlaccess                 mysqldumpslow               mysql_secure_installation
mysqladmin                  mysql_explain_log           mysql_setpermission
mysqlbinlog                 mysql_find_rows             mysqlshow
mysqlbug                    mysql_fix_extensions        mysql_tableinfo
mysqlcheck                  mysql_fix_privilege_tables  mysqltest
mysql_convert_table_format  mysqlhotcopy                mysql_tzinfo_to_sql
mysql_create_system_tables  mysqlimport                 mysql_waitpid
mysqld                      mysql_install_db            mysql_zap
mysqld_multi                mysqlmanager
mysqld_safe                 mysqlmanagerc
aranha:~# mysql

Configuração básica

Após a instalação você deve configurar o MySQL. Primeiro você instalará as tabelas. Para isto use o comando mysql_install_db:

aranha:# mysql_install_db
Installing all prepared tables
Fill help tables

To start mysqld at boot time you have to copy support-files/mysql.server
to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h aranha password 'new-password'
See the manual for more instructions.

NOTE:  If you are upgrading from a MySQL <= 3.22.10 you should run
the /usr/bin/mysql_fix_privilege_tables. Otherwise you will not be
able to use the new GRANT command!

You can start the MySQL daemon with:
cd /usr ; /usr/bin/mysqld_safe &

You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory:
cd sql-bench ; perl run-all-tests

Please report any problems with the /usr/bin/mysqlbug script!

The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at https://order.mysql.com

Agora você deve iniciar o daemon MySQL com o comando mysql_safe & como explicado na saída do comando anterior:

aranha:# cd /usr
aranha:/usr# /usr/bin/mysqld_safe &
[1] 2089
aranha:/usr# Starting mysqld daemon with databases from /var/lib/mysql
mysqld_safe[2123]: started

Para alterar a senha do usuário root do MySQL execute o seguinte comando:

mysqladmin -u root password SENHA

onde SENHA é a senha desejada. Isto é importante por motivos de segurança. A senha do root do sistema operacional não deve ser a mesma do root do MySQL.

Para ver as tabelas existentes digite o comando mysqlshow -p. Será pedida a senha.

aranha:/usr# mysqlshow -p
Enter password:
+-----------+
| Databases |
+-----------+
| mysql     |
| test      |
+-----------+
aranha:/usr#

Ao ser instalado, o MySQL automaticamente cria estes dois bancos de dados. O banco mysql controla usuários, hosts e permissões no servidor. test, como o nome indica, é um banco de dados de teste.

Por padrão, o MySQL permite que qualquer usuário acesse o sistema como anônimo e isto não é bom para a segurança. Para excluir este usuário anônimo do banco mysql execute os seguintes comandos:

#mysql -u root -p
mysql> use mysql
mysql> delete from user where User='';
mysql> quit

Exemplo:

aranha:/home/samuel# mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4 to server version: 4.1.11-Debian_4-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> delete from user where User='';
Query OK, 2 rows affected (0.04 sec)

mysql> quit
Bye
aranha:/home/samuel#

Agora, para que as alterações tenham efeito, execute o comando:

mysqladmin -u root -p reload
<<< Voltar Avançar >>>