Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
c079bfc0
Commit
c079bfc0
authored
Sep 26, 2000
by
monty@donna.mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Small fixes
parent
e32799e4
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
80 additions
and
28 deletions
+80
-28
BitKeeper/etc/logging_ok
BitKeeper/etc/logging_ok
+1
-1
Docs/manual.texi
Docs/manual.texi
+24
-6
mysys/my_init.c
mysys/my_init.c
+17
-2
scripts/mysqlhotcopy.sh
scripts/mysqlhotcopy.sh
+38
-18
sql/share/swedish/errmsg.OLD
sql/share/swedish/errmsg.OLD
+0
-1
No files found.
BitKeeper/etc/logging_ok
View file @
c079bfc0
monty@
tramp.mysql.fi
monty@
donna.mysql.com
Docs/manual.texi
View file @
c079bfc0
...
@@ -581,7 +581,7 @@ Speed of queries that access or update data
...
@@ -581,7 +581,7 @@ Speed of queries that access or update data
* Estimating performance:: Estimating query performance
* Estimating performance:: Estimating query performance
* SELECT speed:: Speed of @code{SELECT} queries
* SELECT speed:: Speed of @code{SELECT} queries
* Where optimizations:: How MySQL optimizes @code{WHERE} clauses
* Where optimizations:: How MySQL optimizes @code{WHERE} clauses
* LEFT JOIN optimization:: How MySQL optimizes @code{LEFT JOIN} and
$
{RIGHT JOIN}
* LEFT JOIN optimization:: How MySQL optimizes @code{LEFT JOIN} and
@code
{RIGHT JOIN}
* LIMIT optimization:: How MySQL optimizes @code{LIMIT}
* LIMIT optimization:: How MySQL optimizes @code{LIMIT}
* Insert speed:: Speed of @code{INSERT} queries
* Insert speed:: Speed of @code{INSERT} queries
* Update speed:: Speed of @code{UPDATE} queries
* Update speed:: Speed of @code{UPDATE} queries
...
@@ -30108,11 +30108,17 @@ clients connected to the @code{mysqld} server.
...
@@ -30108,11 +30108,17 @@ clients connected to the @code{mysqld} server.
If you need more connections than the default (100), then you should restart
If you need more connections than the default (100), then you should restart
@code{mysqld} with a bigger value for the @code{max_connections} variable.
@code{mysqld} with a bigger value for the @code{max_connections} variable.
Note that @code{mysqld} actually allows (@code{max_connections}+1) clients to connect.
Note that @code{mysqld} actually allows (@code{max_connections}+1)
The last connection is reserved for a user with the @strong{process} privilege.
clients to connect. The last connection is reserved for a user with the
By not giving this privilege to normal users (they shouldn't need this), an
@strong{process} privilege. By not giving this privilege to normal
administrator with this privilege can login and use @code{SHOW PROCESSLIST}
users (they shouldn't need this), an administrator with this privilege
to find out what could be wrong. @xref{SHOW}.
can login and use @code{SHOW PROCESSLIST} to find out what could be
wrong. @xref{SHOW}.
The maximum number of connects @strong{MySQL} is depending on how good
the thread library is on a given platform. Linux or Solaris should be
able to support 500-1000 simultaneous connections, depending on how much
RAM you have and what your clients are doing.
@node Out of memory, Packet too large, Too many connections, Common errors
@node Out of memory, Packet too large, Too many connections, Common errors
@subsection @code{Out of memory} error
@subsection @code{Out of memory} error
...
@@ -30547,6 +30553,10 @@ shell> export UMASK_DIR
...
@@ -30547,6 +30553,10 @@ shell> export UMASK_DIR
shell> /path/to/safe_mysqld &
shell> /path/to/safe_mysqld &
@end example
@end example
In @strong{MySQL} 3.23.25 and above, @strong{MySQL} assumes that the
value for @code{UMASK} and @code{UMASK_DIR} is in octal if it starts
with a zero.
@xref{Environment variables}.
@xref{Environment variables}.
@node Not enough file handles, Using DATE, File permissions , Problems
@node Not enough file handles, Using DATE, File permissions , Problems
...
@@ -36774,6 +36784,10 @@ though, so 3.23 is not released as a stable version yet.
...
@@ -36774,6 +36784,10 @@ though, so 3.23 is not released as a stable version yet.
@appendixsubsec Changes in release 3.23.25
@appendixsubsec Changes in release 3.23.25
@itemize @bullet
@itemize @bullet
@item
@item
Fixed that databasename works as second argument to @code{mysqlhotcopy}.
@item
@code{UMASK} and @code{UMASK_DIR} can now be specified in octal.
@item
Added @code{RIGHT JOIN}. This makes @code{RIGHT} a reserved word.
Added @code{RIGHT JOIN}. This makes @code{RIGHT} a reserved word.
@item
@item
Added @code{@@@@IDENTITY} as a synonym for @code{LAST_INSERT_ID()}.
Added @code{@@@@IDENTITY} as a synonym for @code{LAST_INSERT_ID()}.
...
@@ -41578,6 +41592,10 @@ If @code{mysqld} hangs you can try to use some system tools like
...
@@ -41578,6 +41592,10 @@ If @code{mysqld} hangs you can try to use some system tools like
@code{strace} or @code{/usr/proc/bin/pstack} to examine where
@code{strace} or @code{/usr/proc/bin/pstack} to examine where
@code{mysqld} has hung.
@code{mysqld} has hung.
@example
strace /tmp/log libexec/mysqld
@end example
If @code{mysqld} starts to eat up CPU or memory or if it ``hangs'', you
If @code{mysqld} starts to eat up CPU or memory or if it ``hangs'', you
can use @code{mysqladmin processlist status} to find out if someone is
can use @code{mysqladmin processlist status} to find out if someone is
executing a query that takes a long time. It may be a good idea to
executing a query that takes a long time. It may be a good idea to
mysys/my_init.c
View file @
c079bfc0
...
@@ -47,6 +47,19 @@ static my_bool win32_init_tcp_ip();
...
@@ -47,6 +47,19 @@ static my_bool win32_init_tcp_ip();
#endif
#endif
static
my_bool
my_init_done
=
0
;
static
my_bool
my_init_done
=
0
;
ulong
atoi_octal
(
const
char
*
str
)
{
long
int
tmp
;
while
(
*
str
&&
isspace
(
*
str
))
str
++
;
str2int
(
str
,
(
*
str
==
'0'
?
8
:
10
),
/* Octalt or decimalt */
0
,
INT_MAX
,
&
tmp
);
return
(
ulong
)
tmp
;
}
/* Init my_sys functions and my_sys variabels */
/* Init my_sys functions and my_sys variabels */
void
my_init
(
void
)
void
my_init
(
void
)
...
@@ -73,10 +86,12 @@ void my_init(void)
...
@@ -73,10 +86,12 @@ void my_init(void)
if
((
home_dir
=
getenv
(
"HOME"
))
!=
0
)
if
((
home_dir
=
getenv
(
"HOME"
))
!=
0
)
home_dir
=
intern_filename
(
home_dir_buff
,
home_dir
);
home_dir
=
intern_filename
(
home_dir_buff
,
home_dir
);
#ifndef VMS
#ifndef VMS
/* Default creation of new files */
if
((
str
=
getenv
(
"UMASK"
))
!=
0
)
if
((
str
=
getenv
(
"UMASK"
))
!=
0
)
my_umask
=
atoi
(
str
)
|
0600
;
/* Default creation of new files */
my_umask
=
(
int
)
(
atoi_octal
(
str
)
|
0600
);
/* Default creation of new dir's */
if
((
str
=
getenv
(
"UMASK_DIR"
))
!=
0
)
if
((
str
=
getenv
(
"UMASK_DIR"
))
!=
0
)
my_umask_dir
=
atoi
(
str
)
|
0700
;
/* Default creation of new dir's */
my_umask_dir
=
(
int
)
(
atoi_octal
(
str
)
|
0700
);
#endif
#endif
#ifdef VMS
#ifdef VMS
init_ctype
();
/* Stupid linker don't link _ctype.c */
init_ctype
();
/* Stupid linker don't link _ctype.c */
...
...
scripts/mysqlhotcopy.sh
View file @
c079bfc0
...
@@ -25,11 +25,11 @@ WARNING: THIS IS VERY MUCH A FIRST-CUT ALPHA. Comments/patches welcome.
...
@@ -25,11 +25,11 @@ WARNING: THIS IS VERY MUCH A FIRST-CUT ALPHA. Comments/patches welcome.
# Documentation continued at end of file
# Documentation continued at end of file
my
$VERSION
=
"1.
6
"
;
my
$VERSION
=
"1.
7
"
;
my
$OPTIONS
=
<<
"
_OPTIONS
";
my
$OPTIONS
=
<<
"
_OPTIONS
";
Usage:
$0
db_name
new_db_name
Usage:
$0
db_name
[new_db_name | directory]
-?, --help display this helpscreen and exit
-?, --help display this helpscreen and exit
-u, --user=# user for database login if not current user
-u, --user=# user for database login if not current user
...
@@ -126,7 +126,9 @@ my $dsn = ";host=localhost";
...
@@ -126,7 +126,9 @@ my $dsn = ";host=localhost";
$dsn
.
=
";port=
$opt
{port}"
if
$opt
{
port
}
;
$dsn
.
=
";port=
$opt
{port}"
if
$opt
{
port
}
;
$dsn
.
=
";mysql_socket=
$opt
{socket}"
if
$opt
{
socket
}
;
$dsn
.
=
";mysql_socket=
$opt
{socket}"
if
$opt
{
socket
}
;
my
$dbh
=
DBI->connect
(
"dbi:mysql:
$dsn
"
,
$opt
{
user
}
,
$opt
{
password
}
,
{
my
$dbh
=
DBI->connect
(
"dbi:mysql:
$dsn
;mysql_read_default_group=mysqlhotcopy"
,
$opt
{
user
}
,
$opt
{
password
}
,
{
RaiseError
=>
1,
RaiseError
=>
1,
PrintError
=>
0,
PrintError
=>
0,
AutoCommit
=>
1,
AutoCommit
=>
1,
...
@@ -143,20 +145,23 @@ if ( $opt{checkpoint} ) {
...
@@ -143,20 +145,23 @@ if ( $opt{checkpoint} ) {
}
}
# --- get variables from database ---
# --- get variables from database ---
my
$sth_vars
=
$dbh
->prepare
(
"show variables"
)
;
my
$sth_vars
=
$dbh
->prepare
(
"show variables
like 'datadir'
"
)
;
$sth_vars
->execute
;
$sth_vars
->execute
;
while
(
my
(
$var
,
$value
)
=
$sth_vars
->fetchrow_array
)
{
while
(
my
(
$var
,
$value
)
=
$sth_vars
->fetchrow_array
)
{
$mysqld_vars
{
$var
}
=
$value
;
$mysqld_vars
{
$var
}
=
$value
;
}
}
my
$datadir
=
$mysqld_vars
{
datadir
}
my
$datadir
=
$mysqld_vars
{
'datadir'
}
||
die
"datadir not in mysqld variables"
;
||
die
"datadir not in mysqld variables"
;
$datadir
=
~ s:/
$:
:
;
$datadir
=
~ s:/
$:
:
;
# --- get target path ---
# --- get target path ---
my
$tgt_dirname
;
my
(
$tgt_dirname
,
$to_other_database
)
;
if
(
$tgt_name
=
~ m:^
\w
+
$:
)
{
$to_other_database
=
0
;
if
(
$tgt_name
=
~ m:^
\w
+
$:
&&
@db_desc <
=
1
)
{
$tgt_dirname
=
"
$datadir
/
$tgt_name
"
;
$tgt_dirname
=
"
$datadir
/
$tgt_name
"
;
$to_other_database
=
1
;
}
}
elsif
(
$tgt_name
=
~ m:/:
||
$tgt_name
eq
'.'
)
{
elsif
(
$tgt_name
=
~ m:/:
||
$tgt_name
eq
'.'
)
{
$tgt_dirname
=
$tgt_name
;
$tgt_dirname
=
$tgt_name
;
...
@@ -209,6 +214,7 @@ foreach my $rdb ( @db_desc ) {
...
@@ -209,6 +214,7 @@ foreach my $rdb ( @db_desc ) {
$hc_locks
.
=
", "
if
(
length
$hc_locks
&&
@hc_tables
)
;
$hc_locks
.
=
", "
if
(
length
$hc_locks
&&
@hc_tables
)
;
$hc_locks
.
=
join
", "
, map
{
"
$_
READ"
}
@hc_tables
;
$hc_locks
.
=
join
", "
, map
{
"
$_
READ"
}
@hc_tables
;
$hc_tables
.
=
", "
if
(
length
$hc_tables
&&
@hc_tables
)
;
$hc_tables
.
=
join
", "
, @hc_tables
;
$hc_tables
.
=
join
", "
, @hc_tables
;
$num_tables
+
=
scalar @hc_tables
;
$num_tables
+
=
scalar @hc_tables
;
...
@@ -223,19 +229,30 @@ if (length $tgt_name ) {
...
@@ -223,19 +229,30 @@ if (length $tgt_name ) {
# explicit destination directory specified
# explicit destination directory specified
# GNU `cp -r` error message
# GNU `cp -r` error message
die
"copying multiple databases, but last argument (
$tgt_name
) is not a directory
\n
"
die
"copying multiple databases, but last argument (
$tgt_dirname
) is not a directory
\n
"
if
(
@db_desc
>
1
&&
!(
-e
$tgt_name
&&
-d
$tgt_name
)
)
;
if
(
@db_desc
>
1
&&
!(
-e
$tgt_dirname
&&
-d
$tgt_dirname
)
)
;
foreach my
$rdb
(
@db_desc
)
{
if
(
$to_other_database
)
$rdb
->
{
target
}
=
"
$tgt_name
/
$rdb
->{src}"
;
{
foreach my
$rdb
(
@db_desc
)
{
$rdb
->
{
target
}
=
"
$tgt_dirname
"
;
}
}
}
}
else
else
{
{
die
"Error: expected
\$
opt{suffix} to exist"
unless
(
exists
$opt
{
suffix
}
)
;
die
"Last argument (
$tgt_dirname
) is not a directory
\n
"
if
(!(
-e
$tgt_dirname
&&
-d
$tgt_dirname
)
)
;
foreach my
$rdb
(
@db_desc
)
{
foreach my
$rdb
(
@db_desc
)
{
$rdb
->
{
target
}
=
"
$datadir
/
$rdb
->{src}
$opt
{suffix}"
;
$rdb
->
{
target
}
=
"
$tgt_dirname
/
$rdb
->{src}"
;
}
}
}
}
else
{
die
"Error: expected
\$
opt{suffix} to exist"
unless
(
exists
$opt
{
suffix
}
)
;
foreach my
$rdb
(
@db_desc
)
{
$rdb
->
{
target
}
=
"
$datadir
/
$rdb
->{src}
$opt
{suffix}"
;
}
}
}
print Dumper
(
\@
db_desc
)
if
(
$opt
{
debug
}
)
;
print Dumper
(
\@
db_desc
)
if
(
$opt
{
debug
}
)
;
...
@@ -571,6 +588,9 @@ where ":" delimits the subsets, the /^foo_/ indicates all tables
...
@@ -571,6 +588,9 @@ where ":" delimits the subsets, the /^foo_/ indicates all tables
with names begining with "foo_" and the "+" indicates all tables
with names begining with "foo_" and the "+" indicates all tables
not copied by the previous subsets.
not copied by the previous subsets.
newdb is either another not existing database or a full path to a directory
where we can create a directory '
db
'
Add option to lock each table in turn for people who don'
t need
Add option to lock each table in turn for people who don'
t need
cross-table integrity.
cross-table integrity.
...
...
sql/share/swedish/errmsg.OLD
View file @
c079bfc0
...
@@ -194,5 +194,4 @@
...
@@ -194,5 +194,4 @@
"Fick nätverksfel vid skrivning till master",
"Fick nätverksfel vid skrivning till master",
"Hittar inte ett FULLTEXT index i kolumnlistan",
"Hittar inte ett FULLTEXT index i kolumnlistan",
"Kan inte exekvera kommandot emedan du har en låst tabell eller an aktiv transaktion",
"Kan inte exekvera kommandot emedan du har en låst tabell eller an aktiv transaktion",
#ER_UNKNOWN_SYSTEM_VARIABLE
"Okänd system variabel '%-.64'",
"Okänd system variabel '%-.64'",
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment