Funcionalidades adicionadas ou alteradas:
Nova autenticação do cliente, mais segura, baseada em
senha de 45-byte na tabela user
.
Nova função CRC32()
para calcular valor
de verificação de redundância cíclica.
No Windows, agora estamos usando memória compartilhada para
comunicar entre servidor e cliente quando eles estão
executando na mesma máquina e você está conectando a
localhost
.
REPAIR
das tabelas MyISAM agora usam
menos espaço temporário em disco ao ordenar as colunas de
caracteres.
A verificação de
DATE
/DATETIME
agora é
um bit estritamente para suportar a habilidade de deitiguir
automaticamente entre date, datetime e time com
microsegundos. Por exemplo, tipos de dados YYYYMMDD
HHMMDD
não são mais suportados; deve-se também
ter separadores entre as partes
DATE
/TIME
ou não.
Ajuda do lado do servidor para todas as funções do MySQL.
Pode-se agora digitar help week
no
cliente mysql
e conseguir ajuda para a
função week()
.
Adionada a nova função da API C
mysql_get_server_version()
.
Corrigido um buh na libmysqlclient
que
buscava campos padrões.
Corrigido um bug no cliente mysql.cc
ao
ignorar comentários
Adicionado o método record_in_range()
para tabelas MERGE
poderem escolher o
índice certo quando houverem muitos para serem escolhidos.
A replicação agora funciona com RAND()
e variáveis de usuários @var
.
Permite-se alterar o modo para
ANSI_QUOTES
com o servidor no ar.
Agora pode se matar EXPLAIN SELECT
. See
Secção 4.6.7, “Sintaxe de KILL
”.
Agora pode se matar REPAIR TABLE
. See
Secção 4.6.7, “Sintaxe de KILL
”.
Permiti-se especificar lista de chaves vazias para
USE INDEX
, IGNORE
INDEX
e FORCE INDEX
.
Agora DROP TEMPORARY TABLE
apenas apaga
tabelas temporárias e não finaliza transações.
Adicionado suporte para UNION
em tabelas
derivadas.
Warning: Alteração
imcompatível! TIMESTAMP
agora
é retornado comi uma string do tipo 'YYYY-MM-DD
HH:MM:SS'
e tamanhos de timestamp diferentes não
são suportados.
Esta alteração era necessária para compatibilidade com o padrão SQL. Em uma versão futura, uma alteração adicional será feita (compatível co esta alteração), permitindo que o tamanho do timestamp indique o número de dígitos desejado para a fração de segundos.
Novo protocolo cliente/servidor mais rápido que suporta instruções preparadas, limitar parâmetros e colunas de resultados, transferância binaria de dados, avisos.
Adicionado nome de banco de dados e de nomes reais de tabela
(no caso de alias) à estrutura
MYSQL_FIELD
.
Consultas multi linhas: Agora você pode executar diversas consultas de uma vez e então ler o resultados.
Em CREATE TABLE foo (a INT not null primary
key)
a palavra PRIMARY
agora é
opcional.
Em CREATE TABLE
o atributo
SERIAL
agora é um alias para
BIGINT NOT NULL AUTO_INCREMENT UNIQUE
.
SELECT ... FROM DUAL
é um alias para
SELECT ...
. (Para ser compatível com
alguns outros bancos de dados).
Se é criado um
CHAR
/VARCHAR
muito
grande, ele á alterado automaticamente para
TEXT
ou BLOB
; Será
exibido um aviso neste caso.
POde-se especificar os tipos
BLOB
/TEXT
diferentes
com a sintaxe BLOB(tamanho)
e
TEXT(tamanho)
. O MySQL irá alterá-los
automaticamente para um dos tipos internos
BLOB
/TEXT
.
CHAR BYTE
é um alias para CHAR
BINARY
.
VARCHARACTER
é um alias para
VARCHAR
.
Novos operadores inteiro MOD inteiro
e
inteiro DIV inteiro
.
Adicionado SERIAL DEFAULT VALUE
como um
alias para AUTO_INCREMENT
.
Adicionado TRUE
e
FALSE
como alias para 1 e 0,
respectivamente.
Agora aliases são forçados em tabelas dferivadas, como no SQL-99.
orrigido SELECT .. LIMIT 0
para retornar
a contagem aproriada de linhas para
SQL_CALC_FOUND_ROWS
.
Pode-se especificar muitos diretórios temporários para
serem usados de modo round-robin com:
--tmpdir=nomedir1:nomedir2:nomedir3
.
Subqueries: SELECT * from t1 where t1.a=(SELECT
t2.b FROM t2)
.
Tabelas derivadas:
SELECT a.col1, b.col2 FROM (SELECT MAX(col1) AS col1 FROM root_table) a, other_table b WHERE a.col1=b.col1;
Conjuntos de caracteres a serem definidos por colunas, tabelas e banco de dados.
Suporte a Unicode (UTF8).
Nova sintaxe CONVERT(... USING ...)
para
conversão de valores strings entre conjunto de caracteres.
Índices BTREE
em tabelas
HEAP
.
Servidor embutido mais rápido (novo protocolo de comunicação interno).
Pode-se adicionar um comentário por coluna em
CREATE TABLE
.
SHOW FULL COLUMNS FROM nome_tabela
exibe
os comentários das colunas.
ALTER DATABASE
.
Suporte a GIS (dados geometricos). See Capítulo 10, Extensões Espacias em MySQL.
SHOW [COUNT(*)] WARNINGS
exibe avisos
sobre o último comnado.
Pode se especificar um tipo de coluna para em um
CREATE TABLE ... SELECT
definindo a
coluna na parte CREATE
.
CREATE TABLE foo (um tinyint não nulo) SELECT b+1 AS 'a' FROM bar;
expr SOUNDS LIKE expr
é o mesmo que
SOUNDEX(expr)=SOUNDEX(expr)
.
Adicionada nova função VARIANCE(expr)
que retorna a variância de expr
Pode se criar um tabela a partir de uma existente usando
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tabela
(LIKE tabela)
. A tabela também pode ser normal ou
temporária.
Novas opções --reconnect
e
--disable-reconnect
para o cliente
mysql
, para reconectar automaticamente ou
não se a conexão for perdida.
START SLAVE
(STOP
SLAVE
) não retorna mais um erro se o slave já
está iniciado (parado); ele retorns um aviso.
SLAVE START
e SLAVE
STOP
não é mais aceitada pelo analisador de
consulta; use START SLAVE
e STOP
SLAVE
em seu lugar.
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.