Commit f2d31048 authored by monty@donna.mysql.fi's avatar monty@donna.mysql.fi

Merge work:/my/mysql into donna.mysql.fi:/home/my/bk/mysql

parents 37ee1915 74708eb4
......@@ -3,3 +3,4 @@ jcole@tetra.spaceapes.com
mwagner@evoq.mwagner.org
sasha@mysql.sashanet.com
serg@serg.mysql.com
monty@donna.mysql.fi
......@@ -5237,6 +5237,7 @@ shell> scripts/mysql_install_db
shell> chown -R root /usr/local/mysql
shell> chown -R mysql /usr/local/mysql/var
shell> chgrp -R mysql /usr/local/mysql
shell> chown -R root /usr/local/mysql/bin/
shell> bin/safe_mysqld --user=mysql &
@end example
......@@ -13794,14 +13795,28 @@ This is a synonym for @code{INT}.
A large integer. The signed range is @code{-9223372036854775808} to
@code{9223372036854775807}. The unsigned range is @code{0} to
@code{18446744073709551615}. Note that all arithmetic is done using
signed @code{BIGINT} or @code{DOUBLE} values, so you shouldn't use
unsigned big integers larger than @code{9223372036854775807} (63 bits)
except with bit functions! Note that @samp{-}, @samp{+}, and @samp{*}
will use @code{BIGINT} arithmetic when both arguments are @code{INTEGER}
values! This means that if you multiply two big integers (or results
from functions that return integers) you may get unexpected results if
the result is larger than @code{9223372036854775807}.
@code{18446744073709551615}.
Some things you should be aware about @code{BIGINT} columns:
@itemize @bullet
@item
As all arithmetic is done using signed @code{BIGINT} or @code{DOUBLE}
values, so you shouldn't use unsigned big integers larger than
@code{9223372036854775807} (63 bits) except with bit functions! If you
do that, some of the last digits in the result may be wrong because of
rounding errors when converting the @code{BIGINT} to a @code{DOUBLE}.
@item
You can always store an exact integer value in a @code{BIGINT} column by
storing it as a string, as there is in this case there will be no
intermediate double representation.
@item
@samp{-}, @samp{+}, and @samp{*} will use @code{BIGINT} arithmetic when
both arguments are @code{INTEGER} values! This means that if you
multiply two big integers (or results from functions that return
integers) you may get unexpected results when the result is larger than
@code{9223372036854775807}.
@end itemize
@cindex floating-point number
@tindex FLOAT
......@@ -15119,8 +15134,9 @@ All @strong{MySQL} column types can be indexed. Use of indexes on the
relevant columns is the best way to improve the performance of @code{SELECT}
operations.
A table may have up to 16 indexes. The maximum index length is
256 bytes, although this may be changed when compiling @strong{MySQL}.
The maximum number of keys and the maximum index length is defined per
table handler. @xref{Table types}. You can with all table handlers have
at least 16 keys and a total index length of at least 256 bytes.
For @code{CHAR} and @code{VARCHAR} columns, you can index a prefix of a
column. This is much faster and requires less disk space than indexing the
......@@ -15152,6 +15168,7 @@ supported. See @ref{MySQL full-text search} for details.
@cindex multi-column indexes
@cindex indexes, multi-column
@cindex keys, multi-column
@node Multiple-column indexes, Other-vendor column types, Indexes, Column types
@subsection Multiple-column Indexes
......@@ -18184,6 +18201,7 @@ error occurs if you try to add a new row with a key that matches an existing
row.
@item
@tindex PRIMARY KEY
A @code{PRIMARY KEY} is a unique @code{KEY} with the extra constraint
that all key columns must be defined as @code{NOT NULL}. In @strong{MySQL}
the key is named @code{PRIMARY}. A table can have only one @code{PRIMARY KEY}.
......@@ -22486,8 +22504,8 @@ used them.
As of @strong{MySQL} Version 3.23.6, you can choose between three basic
table formats (@code{ISAM}, @code{HEAP} and @code{MyISAM}. Newer
@strong{MySQL} may support additional table type, depending on how you
compile it.
@strong{MySQL} may support additional table type (@code{BDB},
@code{GEMINI} or @code{INNOBASE}), depending on how you compile it.
When you create a new table, you can tell @strong{MySQL} which table
type it should use for the table. @strong{MySQL} will always create a
......@@ -22562,8 +22580,10 @@ The following is new in @code{MyISAM}:
@itemize @bullet
@item
If @code{mysqld} is started with @code{--myisam-recover}, @code{MyISAM} tables
will automaticly be repaired on open if the table wasn't closed properly.
There is a flag in the @code{MyISAM} file that indicates whether or not
the table was closed correctly. If @code{mysqld} is started with
@code{--myisam-recover}, @code{MyISAM} tables will automaticly be
checked and/or repaired on open if the table wasn't closed properly.
@item
You can @code{INSERT} new rows in a table without deleted rows,
while other threads are reading from the table.
......@@ -22605,16 +22625,12 @@ key. This will improve the space utilization in the key tree.
@code{NULL} values are allowed in indexed columns. This takes 0-1
bytes/key.
@item
Maximum key length is now 500 bytes by default. In cases of keys longer
than 250 bytes, a bigger key block size than the default of 1024 bytes
is used for this key.
Maximum key length is 500 bytes by default (can be changed by
recompiling). In cases of keys longer than 250 bytes, a bigger key
block size than the default of 1024 bytes is used for this key.
@item
Maximum number of keys/table enlarged to 32 as default. This can be
enlarged to 64 without having to recompile @code{myisamchk}.
@item
There is a flag in the @code{MyISAM} file that indicates whether or not the
table was closed correctly. This will soon be used for automatic repair
in the @strong{MySQL} server.
Maximum number of keys/table is 32 as default. This can be enlarged to 64
without having to recompile @code{myisamchk}.
@item
@code{myisamchk} will mark tables as checked if one runs it with
@code{--update-state}. @code{myisamchk --fast} will only check those
......@@ -35260,7 +35276,7 @@ If your are using the @strong{MySQL} perl DBD module you can read the options
from the @strong{MySQL} option files. @xref{Option files}.
@example
$dsn = "DBI:mysql:test;mysql_read_default_group=client;"
$dsn = "DBI:mysql:test;mysql_read_default_group=client;mysql_read_default_file=/usr/local/mysql/data/my.cnf"
$dbh = DBI->connect($dsn, $user, $password);
@end example
......@@ -46473,9 +46489,6 @@ The following problems are known and will be fixed in due time:
@itemize @bullet
@item
@code{mysqldump} on a @code{MERGE} table doesn't include the current
mapped tables.
@item
For the moment @code{MATCH} only works with @code{SELECT} statements.
@item
When using @code{SET CHARACTER SET}, one can't use translated
......@@ -156,6 +156,7 @@ int mysql_delete(THD *thd,TABLE_LIST *table_list,COND *conds,ha_rows limit,
limit != HA_POS_ERROR ? TL_WRITE_LOW_PRIORITY :
lock_type)))
DBUG_RETURN(-1);
table->file->info(HA_STATUS_VARIABLE | HA_STATUS_NO_LOCK);
thd->proc_info="init";
if (use_generate_table)
DBUG_RETURN(generate_table(thd,table_list,table));
......
......@@ -38,13 +38,29 @@ set-variable = myisam_sort_buffer_size=64M
log-bin
server-id = 1
# Point the following paths to different dedicated disks
#tmpdir = /tmp/
#log-update = /path-to-dedicated-directory/hostname
# Uncomment the following if you are using BDB tables
#set-variable = bdb_cache_size=384M
#set-variable = bdb_max_lock=100000
# Point the following paths to different dedicated disks
#tmpdir = /tmp/
#log-update = /path-to-dedicated-directory/hostname
# Uncomment the following if you are using Innobase tables
#innobase_data_home_dir = @datadir@
#innobase_log_group_home_dir = @datadir@
#innobase_log_arch_dir = @datadir@
#innobase_data_file_path = ibdata1:25M;ibdata2:37M;ibdata3:100M;ibdata4:300M
#set-variable = innobase_mirrored_log_groups=1
#set-variable = innobase_log_files_in_group=3
#set-variable = innobase_log_file_size=5M
#set-variable = innobase_log_buffer_size=8M
#innobase_flush_log_at_trx_commit=1
#innobase_log_archive=0
#set-variable = innobase_buffer_pool_size=16M
#set-variable = innobase_additional_mem_pool_size=2M
#set-variable = innobase_file_io_threads=4
#set-variable = innobase_lock_wait_timeout=50
[mysqldump]
quick
......
......@@ -42,6 +42,22 @@ server-id = 1
#set-variable = bdb_cache_size=64M
#set-variable = bdb_max_lock=100000
# Uncomment the following if you are using Innobase tables
#innobase_data_home_dir = @datadir@
#innobase_log_group_home_dir = @datadir@
#innobase_log_arch_dir = @datadir@
#innobase_data_file_path = ibdata1:25M;ibdata2:37M;ibdata3:100M;ibdata4:300M
#set-variable = innobase_mirrored_log_groups=1
#set-variable = innobase_log_files_in_group=3
#set-variable = innobase_log_file_size=5M
#set-variable = innobase_log_buffer_size=8M
#innobase_flush_log_at_trx_commit=1
#innobase_log_archive=0
#set-variable = innobase_buffer_pool_size=16M
#set-variable = innobase_additional_mem_pool_size=2M
#set-variable = innobase_file_io_threads=4
#set-variable = innobase_lock_wait_timeout=50
# Point the following paths to different dedicated disks
#tmpdir = /tmp/
#log-update = /path-to-dedicated-directory/hostname
......
......@@ -36,13 +36,29 @@ set-variable = myisam_sort_buffer_size=8M
log-bin
server-id = 1
# Point the following paths to different dedicated disks
#tmpdir = /tmp/
#log-update = /path-to-dedicated-directory/hostname
# Uncomment the following if you are using BDB tables
#set-variable = bdb_cache_size=4M
#set-variable = bdb_max_lock=10000
# Point the following paths to different dedicated disks
#tmpdir = /tmp/
#log-update = /path-to-dedicated-directory/hostname
# Uncomment the following if you are using Innobase tables
#innobase_data_home_dir = @datadir@
#innobase_log_group_home_dir = @datadir@
#innobase_log_arch_dir = @datadir@
#innobase_data_file_path = ibdata1:25M;ibdata2:37M;ibdata3:100M;ibdata4:300M
#set-variable = innobase_mirrored_log_groups=1
#set-variable = innobase_log_files_in_group=3
#set-variable = innobase_log_file_size=5M
#set-variable = innobase_log_buffer_size=8M
#innobase_flush_log_at_trx_commit=1
#innobase_log_archive=0
#set-variable = innobase_buffer_pool_size=16M
#set-variable = innobase_additional_mem_pool_size=2M
#set-variable = innobase_file_io_threads=4
#set-variable = innobase_lock_wait_timeout=50
[mysqldump]
quick
......
......@@ -35,11 +35,27 @@ set-variable = sort_buffer=64K
set-variable = net_buffer_length=2K
server-id = 1
# Uncomment the following if you want to log updates
#log-bin
# Uncomment the following if you are NOT using BDB tables
#skip-bdb
# Uncomment the following if you want to log updates
#log-bin
# Uncomment the following if you are using Innobase tables
#innobase_data_home_dir = @datadir@
#innobase_log_group_home_dir = @datadir@
#innobase_log_arch_dir = @datadir@
#innobase_data_file_path = ibdata1:25M;ibdata2:37M;ibdata3:100M;ibdata4:300M
#set-variable = innobase_mirrored_log_groups=1
#set-variable = innobase_log_files_in_group=3
#set-variable = innobase_log_file_size=5M
#set-variable = innobase_log_buffer_size=8M
#innobase_flush_log_at_trx_commit=1
#innobase_log_archive=0
#set-variable = innobase_buffer_pool_size=16M
#set-variable = innobase_additional_mem_pool_size=2M
#set-variable = innobase_file_io_threads=4
#set-variable = innobase_lock_wait_timeout=50
[mysqldump]
quick
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment