Initial draft for building .deb packages for MariaDB 5.5.

This commit is contained in:
unknown 2012-01-23 12:20:16 +01:00
parent 3cb24fff33
commit cfd4fcb0bc
130 changed files with 26890 additions and 8 deletions

View file

@ -166,26 +166,26 @@ SET(INSTALL_PLUGINTESTDIR_RPM ${plugin_tests})
# DEB layout
#
SET(INSTALL_BINDIR_DEB "bin")
SET(INSTALL_SBINDIR_DEB "bin")
SET(INSTALL_SCRIPTDIR_DEB "scripts")
SET(INSTALL_SBINDIR_DEB "sbin")
SET(INSTALL_SCRIPTDIR_DEB "bin")
#
SET(INSTALL_LIBDIR_DEB "lib")
SET(INSTALL_PLUGINDIR_DEB "lib/plugin")
SET(INSTALL_PLUGINDIR_DEB "lib/mysql/plugin")
#
SET(INSTALL_INCLUDEDIR_DEB "include")
SET(INSTALL_INCLUDEDIR_DEB "include/mysql")
#
SET(INSTALL_DOCDIR_DEB "docs")
SET(INSTALL_DOCREADMEDIR_DEB ".")
SET(INSTALL_MANDIR_DEB "man")
SET(INSTALL_INFODIR_DEB "docs")
SET(INSTALL_MANDIR_DEB "share/man")
SET(INSTALL_INFODIR_DEB "share/info")
#
SET(INSTALL_SHAREDIR_DEB "share")
SET(INSTALL_MYSQLSHAREDIR_DEB "share")
SET(INSTALL_MYSQLSHAREDIR_DEB "share/mysql")
SET(INSTALL_MYSQLTESTDIR_DEB "mysql-test")
SET(INSTALL_SQLBENCHDIR_DEB ".")
SET(INSTALL_SUPPORTFILESDIR_DEB "support-files")
#
SET(INSTALL_MYSQLDATADIR_DEB "data")
SET(INSTALL_MYSQLDATADIR_DEB "/var/lib/mysql")
SET(INSTALL_PLUGINTESTDIR_DEB ${plugin_tests})
#

114
debian/README.Maintainer vendored Normal file
View file

@ -0,0 +1,114 @@
###########################
## FIXME for 5.1 ##
###########################
* put this trigger-recreation thing into the init scripts -- what?!
###########################################################################
# Here are some information that are only of interest for the current and #
# following Debian maintainers of MySQL. #
###########################################################################
The debian/ directory is under SVN control, see debian/control for URL.
#
# Preparing a new version
#
The new orig.tar.gz (without non-free documentation) is created in /tmp/ when
running this command:
debian/rules get-orig-source
#
# mysqlreport
#
The authors e-mail address is <public@codenode.com>.
#
# Remarks to dependencies
#
libwrap0-dev (>= 7.6-8.3)
According to bug report 114582 where where build problems on
IA-64/sid with at least two prior versions.
psmisc
/usr/bin/killall in the initscript
zlib1g in libmysqlclient-dev:
"mysql_config --libs" ads "-lz"
Build-Dep:
debhelper (>=4.1.16):
See po-debconf(7).
autoconf (>= 2.13-20), automake1.7
Try to get rid of them.
doxygen, tetex-bin, tetex-extra, gs
for ndb/docs/*tex
#
# Remarks to the start scripts
#
## initscripts rely on mysqladmin from a different package
We have the problem that "/etc/init.d/mysql stop" relies on mysqladmin which
is in another package (mysql-client) and a passwordless access that's maybe
only available if the user configured his /root/.my.cnf. Can this be a problem?
* normal mode: not because the user is required to have it. Else:
* purge/remove: not, same as normal mode
* upgrade: not, same as normal mode
* first install: not, it depends on mysql-client which at least is unpacked
so mysqladmin is there (to ping). It is not yet configured
passwordles but if there's a server running then there's a
/root/.my.cnf. Anyways, we simply kill anything that's mysqld.
## Passwordless access for the maintainer scripts
Another issue is that the scripts needs passwordless access. To ensure this
a debian-sys-maint user is configured which has process and shutdown privs.
The file with the randomly (that's important!) generated password must be
present as long as the databases remain installed because else a new install
would have no access. This file should be used like:
mysqladmin --defaults-file=/etc/mysql/debian.cnf restart
to avoid providing the password in plaintext on a commandline where it would
be visible to any user via the "ps" command.
## When to start the daemon?
We aim to give the admin full control on when MySQL is running.
Issues to be faced here:
OLD:
1. Debconf asks whether MySQL should be started on boot so update-rc.d is
only run if the answer has been yes. The admin is likely to forget
this decision but update-rc.d checks for an existing line in
/etc/runlevel.conf and leaves it intact.
2. On initial install, if the answer is yes, the daemon has to be started.
3. On upgrades it should only be started if it was already running, everything
else is confusing. Especiall relying on an debconf decision made month ago
is considered suboptimal. See bug #274264
Implementation so far:
prerm (called on upgrade before stopping the server):
check for a running server and set flag if necessary
preinst (called on initial install and before unpacking when upgrading):
check for the debconf variable and set flag if necessary
postinst (called on initial install and after each upgrade after unpacking):
call update-rc.d if debconf says yes
call invoce-rc.d if the flag has been set
Problems remaining:
dpkg-reconfigure and setting mysql start on boot to yes did not start mysql
(ok "start on boot" literally does not mean "start now" so that might have been ok)
NEW:
1. --- no debconf anymore for the sake of simplicity. We have runlevel.conf,
the admin should use it
2. On initial install the server is started.
3. On upgrades the server is started exactly if it was running before so the
runlevel configuration is irrelevant. It will be preserved by the mean of
update-rc.d's builtin check.
Implementation:
prerm (called on upgrade before stopping the server):
check for a running server and set flag if necessary
preinst (called on initial install and before unpacking when upgrading):
check for $1 beeing (initial) "install" and set flag
postinst (called on initial install and after each upgrade after unpacking):
call update-rc.d
call invoce-rc.d if the flag has been set

View file

@ -0,0 +1,6 @@
all:
distclean:
-rm -f Makefile
.PHONY: all distclean clean install check

6
debian/additions/Docs__Makefile.in vendored Normal file
View file

@ -0,0 +1,6 @@
all:
distclean:
-rm -f Makefile
.PHONY: all distclean clean install check

35
debian/additions/debian-start vendored Normal file
View file

@ -0,0 +1,35 @@
#!/bin/bash
#
# This script is executed by "/etc/init.d/mysql" on every (re)start.
#
# Changes to this file will be preserved when updating the Debian package.
#
source /usr/share/mysql/debian-start.inc.sh
MYSQL="/usr/bin/mysql --defaults-file=/etc/mysql/debian.cnf"
MYADMIN="/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf"
MYUPGRADE="/usr/bin/mysql_upgrade --defaults-extra-file=/etc/mysql/debian.cnf"
MYCHECK="/usr/bin/mysqlcheck --defaults-file=/etc/mysql/debian.cnf"
MYCHECK_SUBJECT="WARNING: mysqlcheck has found corrupt tables"
MYCHECK_PARAMS="--all-databases --fast --silent"
MYCHECK_RCPT="root"
# The following commands should be run when the server is up but in background
# where they do not block the server start and in one shell instance so that
# they run sequentially. They are supposed not to echo anything to stdout.
# If you want to disable the check for crashed tables comment
# "check_for_crashed_tables" out.
# (There may be no output to stdout inside the background process!)
echo "Checking for corrupt, not cleanly closed and upgrade needing tables."
# Need to ignore SIGHUP, as otherwise a SIGHUP can sometimes abort the upgrade
# process in the middle.
trap "" SIGHUP
(
upgrade_system_tables_if_necessary;
check_root_accounts;
check_for_crashed_tables;
) >&2 &
exit 0

72
debian/additions/debian-start.inc.sh vendored Normal file
View file

@ -0,0 +1,72 @@
#!/bin/bash
#
# This file is included by /etc/mysql/debian-start
#
## Check all unclosed tables.
# - Requires the server to be up.
# - Is supposed to run silently in background.
function check_for_crashed_tables() {
set -e
set -u
# But do it in the background to not stall the boot process.
logger -p daemon.info -i -t$0 "Triggering myisam-recover for all MyISAM tables"
# Checking for $? is unreliable so the size of the output is checked.
# Some table handlers like HEAP do not support CHECK TABLE.
tempfile=`tempfile`
# We have to use xargs in this case, because a for loop barfs on the
# spaces in the thing to be looped over.
LC_ALL=C $MYSQL --skip-column-names --batch -e '
select concat('\''select count(*) into @discard from `'\'',
TABLE_SCHEMA, '\''`.`'\'', TABLE_NAME, '\''`'\'')
from information_schema.TABLES where ENGINE='\''MyISAM'\' | \
xargs -i $MYSQL --skip-column-names --silent --batch \
--force -e "{}" >$tempfile
if [ -s $tempfile ]; then
(
/bin/echo -e "\n" \
"Improperly closed tables are also reported if clients are accessing\n" \
"the tables *now*. A list of current connections is below.\n";
$MYADMIN processlist status
) >> $tempfile
# Check for presence as a dependency on mailx would require an MTA.
if [ -x /usr/bin/mailx ]; then
mailx -e -s"$MYCHECK_SUBJECT" $MYCHECK_RCPT < $tempfile
fi
(echo "$MYCHECK_SUBJECT"; cat $tempfile) | logger -p daemon.warn -i -t$0
fi
rm $tempfile
}
## Check for tables needing an upgrade.
# - Requires the server to be up.
# - Is supposed to run silently in background.
function upgrade_system_tables_if_necessary() {
set -e
set -u
logger -p daemon.info -i -t$0 "Upgrading MySQL tables if necessary."
# Filter all "duplicate column", "duplicate key" and "unknown column"
# errors as the script is designed to be idempotent.
LC_ALL=C $MYUPGRADE \
2>&1 \
| egrep -v '^(1|@had|ERROR (1054|1060|1061))' \
| logger -p daemon.warn -i -t$0
}
## Check for the presence of both, root accounts with and without password.
# This might have been caused by a bug related to mysql_install_db (#418672).
function check_root_accounts() {
set -e
set -u
logger -p daemon.info -i -t$0 "Checking for insecure root accounts."
ret=$( echo "SELECT count(*) FROM mysql.user WHERE user='root' and password='';" | $MYSQL --skip-column-names )
if [ "$ret" -ne "0" ]; then
logger -p daemon.warn -i -t$0 "WARNING: mysql.user contains $ret root accounts without password!"
fi
}

2
debian/additions/echo_stderr vendored Normal file
View file

@ -0,0 +1,2 @@
#!/bin/bash
echo "$*" 1>&2

View file

@ -0,0 +1,357 @@
Changelog for innotop:
2009-03-09: version 1.7.1
Changes:
* Don't display the CXN column if only one connection is active in
the current view
Bugs fixed:
* fixed bug where trying to aggregate the time column would result
in a crash if the time column had an undef value in it, which is
the case when a thread is in the 'Connect' state
* updated innotop.spec file to reflect current version
2009-02-23: version 1.7.0
Changes:
* supports a central config (/etc/innotop/innotop.conf)
* changed the default home directory config to ~/.innotop/innotop.conf
(away from .ini)
* embedded InnoDBParser.pm into innotop so it can be run with no
installation
* no longer writes a new config file by default
* added --skipcentral (skip reading central config) and --write (write
a config if none were loaded at start-up)
* if no config file is loaded, connect to a MySQL database on
localhost using mysql_read_default_group=client
* embedded maatkit's DSNParser.pm and added support for --user,
--password, --host, --port
* changed default mode from T (InnoDB Transactions) to Q (Query List)
* in addition to connected threads, now displays running and cached
threads in statusbar
* don't load connections from a config file if any DSN information or
a username or password is specified on the command-line
Bugs fixed:
* fixed bug preventing utilization of command-line options that
override default config settings if no config file was loaded
* fixed a bug where migrating from an old version of the config will
delete ~/innotop.ini, if it exists. Now uses File::Temp::tempfile().
2007-11-09: version 1.6.0
* S mode crashed on non-numeric values.
* New user-defined columns crashed upon restart.
* Added --color option to control terminal coloring.
2007-09-18: version 1.5.2
* Added the ability to monitor InnoDB status from a file.
* Changed W mode to L mode; it monitors all locks, not just lock waits.
2007-09-16: version 1.5.1
* Added C (Command Summary) mode.
* Fixed a bug in the 'avg' aggregate function.
2007-09-10: version 1.5.0
Changes:
* Added plugin functionality.
* Added group-by functionality.
* Moved the configuration file to a directory.
* Enhanced filtering and sorting on pivoted tables.
* Many small bug fixes.
2007-07-16: version 1.4.3
Changes:
* Added standard --version command-line option
* Changed colors to cyan instead of blue; more visible on dark terminals.
* Added information to the filter-choosing dialog.
* Added column auto-completion when entering a filter expression.
* Changed Term::ReadKey from optional to mandatory.
* Clarified username in password prompting.
* Ten thousand words of documentation!
Bugs fixed:
* innotop crashed in W mode when InnoDB status data was truncated.
* innotop didn't display errors in tables if debug was enabled.
* The colored() subroutine wasn't being created in non-interactive mode.
* Don't prompt to save password except the first time.
2007-05-03: version 1.4.2
This version contains all changes to the trunk until revision 239; some
changes in revisions 240:250 are included.
MAJOR CHANGES:
* Quick-filters to easily filter any column in any display
* Compatibility with MySQL 3.23 through 6.0
* Improved error handling when a server is down, permissions denied, etc
* Use additional SHOW INNODB STATUS information in 5.1.x
* Make all modes use tables consistently, so they can all be edited,
filtered, colored and sorted consistently
* Combine V, G and S modes into S mode, with v, g, and s hot-keys
* Let DBD driver read MySQL option files; permit connections without
user/pass/etc
* Compile SQL-like expressions into Perl subroutines; eliminate need to
know Perl
* Do not save all config data to config file, only save user's customizations
* Rewritten and improved command-line option handling
* Added --count, --delay, and other command-line options to support
run-and-exit operation
* Improve built-in variable sets
* Improve help screen with three-part balanced-column layout
* Simplify table-editor and improve hotkey support
* Require Perl to have high-resolution time support (Time::HiRes)
* Help the user choose a query to analyze or kill
* Enable EXPLAIN, show-full-query in T mode just like Q mode
* Let data-extraction access current, previous and incremental data sets
all at once
MINOR CHANGES:
* Column stabilizing for Q mode
* New color rules for T, Q, W modes
* Apply slave I/O filter to Q mode
* Improve detection of server version and other meta-data
* Make connection timeout a config variable
* Improve cross-version-compatible SQL syntax
* Get some information from the DBD driver instead of asking MySQL for it
* Improved error messages
* Improve server group creation/editing
* Improve connection/thread killing
* Fix broken key bindings and restore previously mapped hot-keys for
choosing columns
* Some documentation updates (but not nearly enough)
* Allow the user to specify graphing char in S mode (formerly G mode)
* Allow easy switching between variable sets in S mode
* Bind 'n' key globally to choose the 'next' server connection
* Bind '%' key globally to filter displayed tables
* Allow aligning columns on the decimal place for easy readability
* Add hide_hdr config variable to hide column headers in tables
* Add a feature to smartly run PURGE MASTER LOGS in Replication mode
* Enable debug mode as a globally configurable variable
* Improve error messages when an expression or filter doesn't compile or has
a run-time error; die on error when debug is enabled
* Allow user-configurable delays after executing SQL (to let the server
settle down before taking another measurement)
* Add an expression to show how long until a transaction is finished
* Add skip_innodb as a global config variable
* Add '%' after percentages to help disambiguate (user-configurable)
* Add column to M mode to help see how fast slave is catching up to master
BUG FIXES:
* T and W modes had wrong value for wait_status column
* Error tracking on connections didn't reset when the connection recovered
* wait_timeout on connections couldn't be set before MySQL 4.0.3
* There was a crash on 3.23 when wiping deadlocks
* Lettercase changes in some result sets (SHOW MASTER/SLAVE STATUS) between
MySQL versions crashed innotop
* Inactive connections crashed innotop upon access to DBD driver
* set_precision did not respect user defaults for number of digits
* --inc command-line option could not be negated
* InnoDB status parsing was not always parsing all needed information
* S mode (formerly G mode) could crash trying to divide non-numeric data
* M table didn't show Slave_open_temp_tables variable; incorrect lettercase
* DBD drivers with broken AutoCommit would crash innotop
* Some key bindings had incorrect labels
* Some config-file loading routines could load data for things that didn't
exist
* Headers printed too often in S mode
* High-resolution time was not used even when the user had it
* Non-interactive mode printed blank lines sometimes
* Q-mode header and statusbar showed different QPS numbers
* Formulas for key-cache and query-cache hit ratios were wrong
* Mac OS "Darwin" machines were mis-identified as Microsoft Windows
* Some multiplications crashed when given undefined input
* The commify transformation did not check its input and could crash
* Specifying an invalid mode on the command line or config file could crash
innotop
2007-03-29: version 1.4.1
* More tweaks to display of connection errors.
* Fixed a problem with skip-innodb in MySQL 5.1.
* Fix a bug with dead connections in single-connection mode.
* Fix a regex to allow parsing more data from truncated deadlocks.
* Don't load active cxns from the config file if the cxn isn't defined.
2007-03-03: version 1.4.0
* Further tweak error handling and display of connection errors
* More centralization of querying
* Fix forking so it doesn't kill all database connections
* Allow user to run innotop without permissions for GLOBAL variables and status
2007-02-11: version 1.3.6
* Handle some connection failures so innotop doesn't crash because of one server.
* Enable incremental display in more modes.
* Tweaks to colorizing, color editor, and default color rules.
* Tweaks to default sorting rules.
* Use prepared statements for efficiency.
* Bug fixes and code cleanups.
* Data storage is keyed on clock ticks now.
2007-02-03: version 1.3.5
* Bug fixes.
* More tools for editing configuration from within innotop.
* Filters and transformations are constrained to valid values.
* Support for colorizing rows.
* Sorting by multiple columns.
* Compress headers when display is very wide.
* Stabilize and limit column widths.
* Check config file formats when upgrading so upgrades go smoothly.
* Make D mode handle many connections at once.
* Extract simple expressions from data sets in column src property.
This makes innotop more awk-ish.
2007-01-16: version 1.3
* Readline support.
* Can be used unattended, or in a pipe-and-filter mode
where it outputs tab-separated data to standard output.
* You can specify a config file on the command line.
Config files can be marked read-only.
* Monitor multiple servers simultaneously.
* Server groups to help manage many servers conveniently.
* Monitor master/slave status, and control slaves.
* Columns can have user-defined expressions as their data sources.
* Better configuration tools.
* InnoDB status information is merged into SHOW VARIABLES and
SHOW STATUS information, so you can access it all together.
* High-precision time support in more places.
* Lots of tweaks to make things display more readably and compactly.
* Column transformations and filters.
2007-01-16: version 1.0.1
* NOTE: innotop is now hosted at Sourceforge, in Subversion not CVS.
The new project homepage is http://sourceforge.net/projects/innotop/
* Tweak default T/Q mode sort columns to match what people expect.
* Fix broken InnoDBParser.pm documentation (and hence man page).
2007-01-06: version 1.0
* NOTE: innotop is now hosted at Sourceforge, in Subversion not CVS.
The new project homepage is http://sourceforge.net/projects/innotop/
* Prevent control characters from freaking terminal out.
* Set timeout to keep busy servers from closing connection.
* There is only one InnoDB insert buffer.
* Make licenses clear and consistent.
2006-11-14: innotop 0.1.160, InnoDBParser version 1.69
* Support for ANSI color on Microsoft Windows (more readable, compact
display; thanks Gisbert W. Selke).
* Better handling of $ENV{HOME} on Windows.
* Added a LICENSE file to the package as per Gentoo bug:
http://bugs.gentoo.org/show_bug.cgi?id=147600
2006-11-11: innotop 0.1.157, InnoDBParser version 1.69
* Add Microsoft Windows support.
2006-10-19: innotop 0.1.154, InnoDBParser version 1.69
* Add O (Open Tables) mode
* Add some more checks to handle incomplete InnoDB status information
2006-09-30: innotop 0.1.152, InnoDBParser version 1.69
* Figured out what was wrong with package $VERSION variable: it wasn't
after the package declaration!
2006-09-28: innotop 0.1.152, InnoDBParser version 1.67
* Make more efforts towards crash-resistance and tolerance of completely
messed-up inputs. If innotop itself is broken, it is now much harder to
tell, because it just keeps on running without complaining.
* Fix a small bug parsing out some information and displaying it.
2006-09-05: innotop 0.1.149, InnoDBParser version 1.64
* Try to find and eliminate any parsing code that assumes pattern matches
will succeed.
2006-09-05: innotop 0.1.149, InnoDBParser version 1.62
* Make innotop crash-resistant, so I can declare it STABLE finally.
* Instead of using SQL conditional comments, detect MySQL version.
2006-08-22: innotop 0.1.147, InnoDBParser version 1.60
* Fix some innotop bugs with undefined values, bad formatting etc.
2006-08-19: innotop 0.1.146, InnoDBParser version 1.60
* Make innotop handle some unexpected NULL values in Q mode.
* Add OS wait information to W mode, so it is now "everything that waits."
* Center section captions better.
* Make R mode more readable and compact.
* Make InnoDBParser parse lock waits even when they've been waiting 0 secs.
2006-08-12: innotop 0.1.139, InnoDBParser version 1.59
* Add more documentation
* Tweak V mode to show more info in less space.
* Fix a bug in G mode.
2006-08-10: innotop 0.1.132, InnoDBParser version 1.58
* Handle yet more types of FK error... it will never end!
* Handle some special cases when DEADLOCK info truncated
* Add a bit more FK info to F mode in innotop
* More tests added to the test suite
2006-08-07: innotop 0.1.131, InnoDBParser version 1.55
* Fix another issue with configuration
* Handle another type of FK error
2006-08-03: innotop 0.1.130, InnoDBParser version 1.54
* Fix an issue loading config file
* Add heap_no to 'D' (InnoDB Deadlock) mode to ease deadlock debugging.
2006-08-02: innotop 0.1.128, InnoDBParser version 1.54
* Parse lock wait information from the TRANSACTION section.
* Even more OS-specific parsing... pain in the butt...
* Add 'W' (InnoDB Lock Wait) mode.
* Fix some minor display issues with statusbar.
2006-08-02: innotop 0.1.125, InnoDBParser version 1.50
* Don't try to get references to Perl built-in functions like time()
* Handle more OS-specific variations of InnoDB status text
* Add some more information to various places in innotop
2006-08-01: innotop 0.1.123, InnoDBParser version 1.47
* Enhance S and G modes: clear screen and re-print headers
* Don't crash when deadlock data is truncated
* Make Analyze mode say how to get back to whatever you came from
* Display 'nothing to display' when there is nothing
* Add ability to read InnoDB status text from a file (mostly helps test)
* Add table of Wait Array Information in Row Op/Semaphore mode
* Add table of lock information in InnoDB deadlock mode
* Ensure new features in upgrades don't get masked by existing config files
* Tweak default column choices for T mode
* Enhance foreign key parsing
* Enhance physical record and data tuple parsing
* Enhance lock parsing (handle old-style and new-style formats)
2006-07-24: innotop 0.1.112, InnoDBParser version 1.36
* InnoDBParser enhancements for FK error messages.
* A fix to innotop to prevent it from crashing while trying to display a FK
error message.
* Some minor cosmetic changes to number formatting in innotop.
2006-07-22: innotop 0.1.106, InnoDBParser version 1.35
* InnoDBParser is much more complete and accurate.
* Tons of bug fixes.
* Add partitions to EXPLAIN mode.
* Enhance Q mode header, add T mode header.
* Share some configuration variables across modes.
* Add formatted time columns to Q, T modes.
* Add command-line argument parsing.
* Turn off echo when asking for password.
* Add option to specify port when connecting.
* Let display-optimized-query display multiple notes.
* Lots of small improvements, such as showing more info in statusbar.
2006-07-02: innotop 0.1.74, InnoDBParser version 1.24
* Initial release for public consumption.

10946
debian/additions/innotop/innotop vendored Normal file

File diff suppressed because it is too large Load diff

2084
debian/additions/innotop/innotop.1 vendored Normal file

File diff suppressed because it is too large Load diff

16
debian/additions/msql2mysql.1 vendored Normal file
View file

@ -0,0 +1,16 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
msql2mysql \- MySQL importer for msql style data.
.SH SYNOPSIS
msql2mysql [options]
.SH DESCRIPTION
This program imports old msql database files.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

195
debian/additions/my.cnf vendored Normal file
View file

@ -0,0 +1,195 @@
# MariaDB database server configuration file.
#
# =================================================================
# Base configuration courtesy of Open Query (http://openquery.com/)
# For production use, case-specific preparation is still required.
# 2009-10-07
#
# This is *not* an optimised config, merely a more sane baseline:
# - InnoDB default (e.g., ACID out-of-the-box, same as on Windows)
# - strict mode (for proper input checks, same as on Windows)
# - various other useful settings
# - make use of MariaDB/Percona/OurDelta enhancements/extensions
#
# For tuning assistance, please see http://openquery.com/services
# =================================================================
#
# You can copy this file to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html
# This will be passed to all mysql clients
# It has been reported that passwords should be enclosed with ticks/quotes
# escpecially if they contain "#" chars...
# Remember to edit /etc/mysql/debian.cnf when changing the socket location.
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
# Default is Latin1, if you need UTF-8 set this (also in server section)
#default-character-set = utf8
# Here is entries for some specific programs
# The following values assume you have at least 32M ram
# This was formally known as [safe_mysqld]. Both versions are currently parsed.
[mysqld_safe]
socket = /var/run/mysqld/mysqld.sock
nice = 0
[mysqld]
#
# * Basic Settings
#
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/english
skip-external-locking
#
# * Character sets
#
# Default is Latin1, if you need UTF-8 set all this (also in client section)
#
#default-character-set = utf8
#default-collation = utf8_general_ci
#character_set_server = utf8
#collation_server = utf8_general_ci
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1
#
# * Fine Tuning
#
max_connections = 100
connect_timeout = 5
wait_timeout = 600
max_allowed_packet = 16M
thread_cache_size = 128
sort_buffer_size = 4M
bulk_insert_buffer_size = 16M
tmp_table_size = 32M
max_heap_table_size = 32M
#
# * MyISAM
#
# This replaces the startup script and checks MyISAM tables if needed
# the first time they are touched. On error, make copy and try a repair.
myisam_recover = BACKUP
key_buffer_size = 128M
#open-files-limit = 2000
table_cache = 400
myisam_sort_buffer_size = 512M
concurrent_insert = 2
read_buffer_size = 2M
read_rnd_buffer_size = 1M
#
# * Query Cache Configuration
#
# Cache only tiny result sets, so we can fit more in the query cache.
query_cache_limit = 128K
query_cache_size = 64M
# for more write intensive setups, set to DEMAND or OFF
#query_cache_type = DEMAND
#
# * Logging and Replication
#
# Both location gets rotated by the cronjob.
# Be aware that this log type is a performance killer.
# As of 5.1 you can enable the log at runtime!
#general_log_file = /var/log/mysql/mysql.log
#general_log = 1
#
# Error logging goes to syslog due to /etc/mysql/conf.d/mysqld_safe_syslog.cnf.
#
# we do want to know about network errors and such
log_warnings = 2
#
# Enable the slow query log to see queries with especially long duration
#slow_query_log[={0|1}]
slow_query_log_file = /var/log/mysql/mariadb-slow.log
long_query_time = 10
#log_slow_rate_limit = 1000
log_slow_verbosity = query_plan
#log-queries-not-using-indexes
#log_slow_admin_statements
#
# The following can be used as easy to replay backup logs or for replication.
# note: if you are setting up a replication slave, see README.Debian about
# other settings you may need to change.
#server-id = 1
#report_host = master1
#auto_increment_increment = 2
#auto_increment_offset = 1
log_bin = /var/log/mysql/mariadb-bin
log_bin_index = /var/log/mysql/mariadb-bin.index
# not fab for performance, but safer
#sync_binlog = 1
expire_logs_days = 10
max_binlog_size = 100M
# slaves
#relay_log = /var/log/mysql/relay-bin
#relay_log_index = /var/log/mysql/relay-bin.index
#relay_log_info_file = /var/log/mysql/relay-bin.info
#log_slave_updates
#read_only
#
# If applications support it, this stricter sql_mode prevents some
# mistakes like inserting invalid dates etc.
#sql_mode = NO_ENGINE_SUBSTITUTION,TRADITIONAL
#
# * InnoDB
#
# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
# Read the manual for more InnoDB related options. There are many!
default_storage_engine = InnoDB
# you can't just change log file size, requires special procedure
#innodb_log_file_size = 50M
innodb_buffer_pool_size = 256M
innodb_log_buffer_size = 8M
innodb_file_per_table = 1
innodb_open_files = 400
innodb_io_capacity = 400
innodb_flush_method = O_DIRECT
#
# * Security Features
#
# Read the manual, too, if you want chroot!
# chroot = /var/lib/mysql/
#
# For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
#
# ssl-ca=/etc/mysql/cacert.pem
# ssl-cert=/etc/mysql/server-cert.pem
# ssl-key=/etc/mysql/server-key.pem
[mysqldump]
quick
quote-names
max_allowed_packet = 16M
[mysql]
#no-auto-rehash # faster start of mysql but no tab completition
[isamchk]
key_buffer = 16M
#
# * IMPORTANT: Additional settings that can override those from this file!
# The files must end with '.cnf', otherwise they'll be ignored.
#
!includedir /etc/mysql/conf.d/

16
debian/additions/my_print_defaults.1 vendored Normal file
View file

@ -0,0 +1,16 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
my_print_defaults \- MySQL helper script that prints defaults.
.SH SYNOPSIS
my_print_defaults [options]
.SH DESCRIPTION
Prints all arguments that is give to some program using the default files.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

16
debian/additions/myisam_ftdump.1 vendored Normal file
View file

@ -0,0 +1,16 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
myisam_ftdump \- Dumps full text tables.
.SH SYNOPSIS
myisam_ftdump [options]
.SH DESCRIPTION
Dumps information and contents of full text tables.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

17
debian/additions/myisamchk.1 vendored Normal file
View file

@ -0,0 +1,17 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
myisamchk \- Checks MySQL myisam type databases.
.SH SYNOPSIS
myisamchk [options]
.SH DESCRIPTION
Description, check and repair of ISAM tables.
Used without options all tables on the command will be checked for errors
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

16
debian/additions/myisamlog.1 vendored Normal file
View file

@ -0,0 +1,16 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
myisamlog \- MySQL helper script.
.SH SYNOPSIS
myisamlog [options]
.SH DESCRIPTION
Function unknown. Mail to ch@debian.org.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

19
debian/additions/myisampack.1 vendored Normal file
View file

@ -0,0 +1,19 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
myisampack \- Compresses MySQL database files.
.SH SYNOPSIS
myisampack [options]
.SH DESCRIPTION
Pack a MyISAM-table to take much less space.
Keys are not updated, you must run myisamchk -rq on the datafile
afterwards to update the keys.
You should give the .MYI file as the filename argument.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

View file

@ -0,0 +1,2 @@
W: mysql-dfsg source: maintainer-script-lacks-debhelper-token debian/mysql-server.postinst
W: mysql-server: possible-bashism-in-maintainer-script postinst:68 'p{("a".."z","A".."Z",0..9)[int(rand(62))]}'

17
debian/additions/mysql_config.1 vendored Normal file
View file

@ -0,0 +1,17 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
mysqlconfig \- MySQL compile settings.
.SH SYNOPSIS
mysqlconfig [options]
.SH DESCRIPTION
This program is only useful for people who want to compile agains
libmysqlclient.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

View file

@ -0,0 +1,17 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
mysql_convert_table_format \- MySQL table converter.
.SH SYNOPSIS
mysql_convert_table_format [options]
.SH DESCRIPTION
Conversion of a MySQL tables to other table types.
If no tables has been specifed, all tables in the database will be converted.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

18
debian/additions/mysql_find_rows.1 vendored Normal file
View file

@ -0,0 +1,18 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
mysql_find_rows \- MySQL shell skript for searching in update logs.
.SH SYNOPSIS
mysql_find_rows [options]
.SH DESCRIPTION
Prints all SQL queries that matches a regexp or contains a 'use
database' or 'set ..' command to stdout. A SQL query may contain
newlines. This is useful to find things in a MySQL update log.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

18
debian/additions/mysql_fix_extensions.1 vendored Normal file
View file

@ -0,0 +1,18 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
mysql_fix_extensions \- Corrects MySQL database file names.
.SH SYNOPSIS
mysql_fix_extensions <datadir>
.SH DESCRIPTION
Makes .frm lowercase and .MYI/MYD/ISM/ISD uppercase
useful when datafiles are copied from windows.
Does not work with RAID, with InnoDB or BDB tables.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (8)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

16
debian/additions/mysql_install_db.1 vendored Normal file
View file

@ -0,0 +1,16 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
mysql_install_db \- MySQL helper program.
.SH SYNOPSIS
mysql_install_db [options]
.SH DESCRIPTION
This program is normally not needed by any user.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

View file

@ -0,0 +1,17 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
mysql_secure_installation \- Secures the MySQL access control lists.
.SH SYNOPSIS
mysql_secure_installation [options]
.SH DESCRIPTION
This interactive programm suggests changes like removing anonymous users that
are supposed to make your installation more secure.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (8)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

23
debian/additions/mysql_setpermission.1 vendored Normal file
View file

@ -0,0 +1,23 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
mysql_setpermission \- Adds MySQL users or changes passwords.
.SH SYNOPSIS
mysql_setpermission [options]
.SH DESCRIPTION
The permission setter is a little program which can help you add users
or databases or change passwords in MySQL. Keep in mind that we don't
check permissions which already been set in MySQL. So if you can't
connect to MySQL using the permission you just added, take a look at
the permissions which have already been set in MySQL.
The permission setter first reads your .my.cnf file in your Home
directory if it exists.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

322
debian/additions/mysql_tableinfo.1 vendored Normal file
View file

@ -0,0 +1,322 @@
.\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sh \" Subsection heading
.br
.if t .Sp
.ne 5
.PP
\fB\\$1\fR
.PP
..
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" Set up some character translations and predefined strings. \*(-- will
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
.\" double quote, and \*(R" will give a right double quote. | will give a
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
.\" expand to `' in nroff, nothing in troff, for use with C<>.
.tr \(*W-|\(bv\*(Tr
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
.ie n \{\
. ds -- \(*W-
. ds PI pi
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
. ds L" ""
. ds R" ""
. ds C` ""
. ds C' ""
'br\}
.el\{\
. ds -- \|\(em\|
. ds PI \(*p
. ds L" ``
. ds R" ''
'br\}
.\"
.\" If the F register is turned on, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
.\" entries marked with X<> in POD. Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.if \nF \{\
. de IX
. tm Index:\\$1\t\\n%\t"\\$2"
..
. nr % 0
. rr F
.\}
.\"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.hy 0
.if n .na
.\"
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
.\" Fear. Run. Save yourself. No user-serviceable parts.
. \" fudge factors for nroff and troff
.if n \{\
. ds #H 0
. ds #V .8m
. ds #F .3m
. ds #[ \f1
. ds #] \fP
.\}
.if t \{\
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
. ds #V .6m
. ds #F 0
. ds #[ \&
. ds #] \&
.\}
. \" simple accents for nroff and troff
.if n \{\
. ds ' \&
. ds ` \&
. ds ^ \&
. ds , \&
. ds ~ ~
. ds /
.\}
.if t \{\
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
.\}
. \" troff and (daisy-wheel) nroff accents
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
.ds ae a\h'-(\w'a'u*4/10)'e
.ds Ae A\h'-(\w'A'u*4/10)'E
. \" corrections for vroff
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
. \" for low resolution devices (crt and lpr)
.if \n(.H>23 .if \n(.V>19 \
\{\
. ds : e
. ds 8 ss
. ds o a
. ds d- d\h'-1'\(ga
. ds D- D\h'-1'\(hy
. ds th \o'bp'
. ds Th \o'LP'
. ds ae ae
. ds Ae AE
.\}
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
.IX Title "MYSQL_TABLEINFO 1"
.TH MYSQL_TABLEINFO 1 "2003-04-05" "perl v5.8.0" "User Contributed Perl Documentation"
.SH "NAME"
mysql_tableinfo \- creates and populates information tables with
the output of SHOW DATABASES, SHOW TABLES (or SHOW TABLE STATUS),
SHOW COLUMNS and SHOW INDEX.
.PP
This is version 1.1.
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 1
\& mysql_tableinfo [OPTIONS] database_to_write [database_like_wild] [table_like_wild]
.Ve
.PP
.Vb 2
\& Do not backquote (``) database_to_write,
\& and do not quote ('') database_like_wild or table_like_wild
.Ve
.PP
.Vb 1
\& Examples:
.Ve
.PP
.Vb 1
\& mysql_tableinfo info
.Ve
.PP
.Vb 1
\& mysql_tableinfo info this_db
.Ve
.PP
.Vb 1
\& mysql_tableinfo info %a% b%
.Ve
.PP
.Vb 1
\& mysql_tableinfo info --clear-only
.Ve
.PP
.Vb 1
\& mysql_tableinfo info --col --idx --table-status
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
mysql_tableinfo asks a MySQL server information about its
databases, tables, table columns and index, and stores this
in tables called `db`, `tbl` (or `tbl_status`), `col`, `idx`
(with an optional prefix specified with \-\-prefix).
After that, you can query these information tables, for example
to build your admin scripts with \s-1SQL\s0 queries, like
.PP
\&\s-1SELECT\s0 \s-1CONCAT\s0(\*(L"\s-1CHECK\s0 \s-1TABLE\s0 \*(R",`database`,\*(L".\*(R",`table`,\*(L" \s-1EXTENDED\s0;\*(R")
\&\s-1FROM\s0 info.tbl \s-1WHERE\s0 ... ;
.PP
as people usually do with some other \s-1RDBMS\s0
(note: to increase the speed of your queries on the info tables,
you may add some index on them).
.PP
The database_like_wild and table_like_wild instructs the program
to gather information only about databases and tables
whose names match these patterns. If the info
tables already exist, their rows matching the patterns are simply
deleted and replaced by the new ones. That is,
old rows not matching the patterns are not touched.
If the database_like_wild and table_like_wild arguments
are not specified on the command-line they default to \*(L"%\*(R".
.PP
The program :
.PP
\&\- does \s-1CREATE\s0 \s-1DATABASE\s0 \s-1IF\s0 \s-1NOT\s0 \s-1EXISTS\s0 database_to_write
where database_to_write is the database name specified on the command\-line.
.PP
\&\- does \s-1CREATE\s0 \s-1TABLE\s0 \s-1IF\s0 \s-1NOT\s0 \s-1EXISTS\s0 database_to_write.`db`
.PP
\&\- fills database_to_write.`db` with the output of
\&\s-1SHOW\s0 \s-1DATABASES\s0 \s-1LIKE\s0 database_like_wild
.PP
\&\- does \s-1CREATE\s0 \s-1TABLE\s0 \s-1IF\s0 \s-1NOT\s0 \s-1EXISTS\s0 database_to_write.`tbl`
(respectively database_to_write.`tbl_status`
if the \-\-tbl\-status option is on)
.PP
\&\- for every found database,
fills database_to_write.`tbl` (respectively database_to_write.`tbl_status`)
with the output of
\&\s-1SHOW\s0 \s-1TABLES\s0 \s-1FROM\s0 found_db \s-1LIKE\s0 table_like_wild
(respectively \s-1SHOW\s0 \s-1TABLE\s0 \s-1STATUS\s0 \s-1FROM\s0 found_db \s-1LIKE\s0 table_like_wild)
.PP
\&\- if the \-\-col option is on,
* does \s-1CREATE\s0 \s-1TABLE\s0 \s-1IF\s0 \s-1NOT\s0 \s-1EXISTS\s0 database_to_write.`col`
* for every found table,
fills database_to_write.`col` with the output of
\s-1SHOW\s0 \s-1COLUMNS\s0 \s-1FROM\s0 found_tbl \s-1FROM\s0 found_db
.PP
\&\- if the \-\-idx option is on,
* does \s-1CREATE\s0 \s-1TABLE\s0 \s-1IF\s0 \s-1NOT\s0 \s-1EXISTS\s0 database_to_write.`idx`
* for every found table,
fills database_to_write.`idx` with the output of
\s-1SHOW\s0 \s-1INDEX\s0 \s-1FROM\s0 found_tbl \s-1FROM\s0 found_db
.PP
Some options may modify this general scheme (see below).
.PP
As mentioned, the contents of the info tables are the output of
\&\s-1SHOW\s0 commands. In fact the contents are slightly more complete :
.PP
\&\- the `tbl` (or `tbl_status`) info table
has an extra column which contains the database name,
.PP
\&\- the `col` info table
has an extra column which contains the table name,
and an extra column which contains, for each described column,
the number of this column in the table owning it (this extra column
is called `Seq_in_table`). `Seq_in_table` makes it possible for you
to retrieve your columns in sorted order, when you are querying
the `col` table.
.PP
\&\- the `index` info table
has an extra column which contains the database name.
.PP
Caution: info tables contain certain columns (e.g.
Database, Table, Null...) whose names, as they are MySQL reserved words,
need to be backquoted (`...`) when used in \s-1SQL\s0 statements.
.PP
Caution: as information fetching and info tables filling happen at the
same time, info tables may contain inaccurate information about
themselves.
.SH "OPTIONS"
.IX Header "OPTIONS"
.IP "\-\-clear" 4
.IX Item "--clear"
Does \s-1DROP\s0 \s-1TABLE\s0 on the info tables (only those that the program is
going to fill, for example if you do not use \-\-col it won't drop
the `col` table) and processes normally. Does not drop database_to_write.
.IP "\-\-clear\-only" 4
.IX Item "--clear-only"
Same as \-\-clear but exits after the DROPs.
.IP "\-\-col" 4
.IX Item "--col"
Adds columns information (into table `col`).
.IP "\-\-idx" 4
.IX Item "--idx"
Adds index information (into table `idx`).
.IP "\-\-prefix prefix" 4
.IX Item "--prefix prefix"
The info tables are named from the concatenation of prefix and,
respectively, db, tbl (or tbl_status), col, idx. Do not quote ('')
or backquote (``) prefix.
.IP "\-q, \-\-quiet" 4
.IX Item "-q, --quiet"
Does not warn you about what the script is going to do (\s-1DROP\s0 \s-1TABLE\s0 etc)
and does not ask for a confirmation before starting.
.IP "\-\-tbl\-status" 4
.IX Item "--tbl-status"
Instead of using \s-1SHOW\s0 \s-1TABLES\s0, uses \s-1SHOW\s0 \s-1TABLE\s0 \s-1STATUS\s0
(much more complete information, but slower).
.IP "\-\-help" 4
.IX Item "--help"
Display helpscreen and exit
.IP "\-u, \-\-user=#" 4
.IX Item "-u, --user=#"
user for database login if not current user. Give a user
who has sufficient privileges (\s-1CREATE\s0, ...).
.IP "\-p, \-\-password=# (INSECURE)" 4
.IX Item "-p, --password=# (INSECURE)"
password to use when connecting to server.
WARNING: Providing a password on command line is insecure as it is visible through /proc to anyone for a short time.
.IP "\-h, \-\-host=#" 4
.IX Item "-h, --host=#"
host to connect to
.IP "\-P, \-\-port=#" 4
.IX Item "-P, --port=#"
port to use when connecting to server
.IP "\-S, \-\-socket=#" 4
.IX Item "-S, --socket=#"
\&\s-1UNIX\s0 domain socket to use when connecting to server
.SH "WARRANTY"
.IX Header "WARRANTY"
This software is free and comes without warranty of any kind. You
should never trust backup software without studying the code yourself.
Study the code inside this script and only rely on it if \fIyou\fR believe
that it does the right thing for you.
.Sp
Patches adding bug fixes, documentation and new features are welcome.
.SH "TO DO"
.IX Header "TO DO"
Use extended inserts to be faster (for servers with many databases
or tables). But to do that, must care about net\-buffer\-length.
.SH "AUTHOR"
.IX Header "AUTHOR"
2002\-06\-18 Guilhem Bichot (guilhem.bichot@mines\-paris.org)
.Sp
And all the authors of mysqlhotcopy, which served as a model for
the structure of the program.

20
debian/additions/mysql_waitpid.1 vendored Normal file
View file

@ -0,0 +1,20 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
mysql_waitpid \- Waits a specified amount of seconds for a PID to terminate.
.SH SYNOPSIS
mysql_waitpid [options] <pid> <seconds>
.SH DESCRIPTION
Description: Waits for a program, which program id is #pid, to
terminate within #time seconds. If the program terminates within
this time, or if the #pid no longer exists, value 0 is returned.
Otherwise 1 is returned. Both #pid and #time must be positive
integer arguments.
See mysql_waitpid for options.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

17
debian/additions/mysqlbinlog.1 vendored Normal file
View file

@ -0,0 +1,17 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
mysqlbinlog \- Dumps MySQL binary logs.
.SH SYNOPSIS
mysqlbinlog [options]
.SH DESCRIPTION
Dumps a MySQL binary log in a format usable for viewing or for pipeing to
the mysql command line client
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

14
debian/additions/mysqlbug.1 vendored Normal file
View file

@ -0,0 +1,14 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
mysqlbug \- MySQL bug reporting tool.
.SH SYNOPSIS
mysqlbug [options]
.SH DESCRIPTION
Interactive bug reporting tool. Use reportbug on Debian systems.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

28
debian/additions/mysqlcheck.1 vendored Normal file
View file

@ -0,0 +1,28 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
mysqlcheck \- MySQL program for repairing, checking and optimizing tables.
.SH SYNOPSIS
mysqlcheck | mysqlanalyze | mysqloptimize [options]
.SH DESCRIPTION
This program can be used to CHECK (-c,-m,-C), REPAIR (-r), ANALYZE (-a)
or OPTIMIZE (-o) tables. Some of the options (like -e or -q) can be
used same time. It works on MyISAM and in some cases on BDB tables.
Please consult the MySQL manual for latest information about the
above. The options -c,-r,-a and -o are exclusive to each other, which
means that the last option will be used, if several was specified.
The option -c will be used by default, if none was specified. You
can change the default behavior by making a symbolic link, or
copying this file somewhere with another name, the alternatives are:
mysqlrepair: The default option will be -r
mysqlanalyze: The default option will be -a
mysqloptimize: The default option will be -o
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (8)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

View file

@ -0,0 +1,2 @@
[mysqld_safe]
syslog

50
debian/additions/mysqldumpslow.1 vendored Normal file
View file

@ -0,0 +1,50 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
mysqldumpslow \- Parse and summarize the MySQL slow query log.
.SH SYNOPSIS
mysqldumpslow [options]
.SH DESCRIPTION
This program parses and summarizes a 'slow query log'.
.TP
\fB\-v\fR
verbose
.TP
\fB\-d\fR
debug
.TP
\fB\-s=WORD\fR
what to sort by (t, at, l, al, r, ar etc)
.TP
\fB\-r\fR
reverse the sort order (largest last instead of first)
.TP
\fB\-t=NUMBER\fR
just show the top n queries
.TP
\fB\-a\fR
don't abstract all numbers to N and strings to 'S'
.TP
\fB\-n=NUMBER\fR
abstract numbers with at least n digits within names
.TP
\fB\-g=WORD\fR
grep: only consider stmts that include this string
.TP
\fB\-h=WORD\fR
hostname of db server for *-slow.log filename (can be wildcard)
.TP
\fB\-i=WORD\fR
name of server instance (if using mysql.server startup script)
.TP
\fB\-l\fR
don't subtract lock time from total time
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org> based on
the commends in the code.
MySQL is available at http://www.mysql.com/.
.\" end of man page

20
debian/additions/mysqlimport.1 vendored Normal file
View file

@ -0,0 +1,20 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
mysqlimport \- Imports text files with MySQL database queries.
.SH SYNOPSIS
mysqlimport [options]
.SH DESCRIPTION
Loads tables from text files in various formats. The base name of the
text file must be the name of the table that should be used.
If one uses sockets to connect to the MySQL server, the server will open and
read the text file directly. In other cases the client will open the text
file. The SQL command 'LOAD DATA INFILE' is used to import the rows.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

1298
debian/additions/mysqlreport vendored Executable file

File diff suppressed because it is too large Load diff

180
debian/additions/mysqlreport.1 vendored Normal file
View file

@ -0,0 +1,180 @@
.TH "mysqlreport" "1" "2.5 2006-09-01 (docrev 2006-05-19)" "Daniel Nichter" "MYSQL"
.SH "NAME"
.LP
mysqlreport \- Makes a friendly report of important MySQL status values
.SH "SYNTAX"
.LP
mysqlreport [\fIoptions\fP]
.SH "DESCRIPTION"
.LP
mysqlreport makes a friendly report of important MySQL status values. Actually,
it makes a friendly report of nearly every status value from SHOW STATUS.
Unlike SHOW STATUS which simply dumps over 100 values to screen in one long
list, mysqlreport interprets and formats the values and presents the basic
values and many more inferred values in a human\-readable format. Numerous
example reports are available at the mysqlreport web page at
http://hackmysql.com/mysqlreport.
The benefit of mysqlreport is that it allows you to very quickly see a wide
array of performance indicators for your MySQL server which would otherwise
need to be calculated by hand from all the various SHOW STATUS values. For
example, the Index Read Ratio is an important value but it's not present in
SHOW STATUS; it's an inferred value (the ratio of Key_reads to
Key_read_requests).
This documentation outlines all the command line options in mysqlreport, most
of which control which reports are printed. This document does not address
how to interpret these reports; that topic is covered in the document Guide
To Understanding mysqlreport at http://hackmysql.com/mysqlreportguide.
.SH "OPTIONS"
Technically, command line options are in the form \-\-option, but \-option works
too. All options can be abbreviated if the abbreviation is unique. For example,
option \-\-host can be abbreviated \-\-ho but not \-\-h because \-\-h is ambiguous: it
could mean \-\-host or \-\-help.
.LP
.TP
\fB\-\-help\fR
Output help information and exit.
.TP
\fB\-\-user USER\fR
.TP
\fB\-\-password\fR
As of version 2.3 \-\-password can take the password on the
command line like "\-\-password FOO". Using \-\-password
alone without giving a password on the command line
causes mysqlreport to prompt for a password.
.TP
\fB\-\-host ADDRESS\fR
.TP
\fB\-\-port PORT\fR
.TP
\fB\-\-socket SOCKET\fR
.TP
\fB\-\-no\-mycnf\fR
\-\-no\-mycnf makes mysqlreport not read ~/.my.cnf which it does by default
otherwise. \-\-user and \-\-password always override values from ~/.my.cnf.
.TP
\fB\-\-dtq\fR
Print Distribution of Total Queries (DTQ) report (under
Total in Questions report). Queries (or Questions) can
be divided into four main areas: DMS (see \-\-dms below),
Com_ (see \-\-com below), COM_QUIT (see COM_QUIT and
Questions at http://hackmysql.com/com_quit), and
Unknown. \-\-dtq lists the number of queries in each of
these areas in descending order.
.TP
\fB\-\-dms\fR
Print Data Manipulation Statements (DMS) report (under
DMS in Questions report). DMS are those from the MySQL
manual section 13.2. Data Manipulation Statements.
(Currently, mysqlreport considers only SELECT, INSERT,
REPLACE, UPDATE, and DELETE.) Each DMS is listed in
descending order by count.
.TP
\fB\-\-com N\fR
Print top N number of non\-DMS Com_ status values in
descending order (after DMS in Questions report). If N
is not given, default is 3. Such non\-DMS Com_ values
include Com_change_db, Com_show_tables, Com_rollback,
etc.
.TP
\fB\-\-sas\fR
Print report for Select_ and Sort_ status values (after
Questions report). See MySQL Select and Sort Status
Variables at http://hackmysql.com/selectandsort.
.TP
\fB\-\-tab\fR
Print Threads, Aborted, and Bytes status reports (after
Created temp report). As of mysqlreport v2.3 the
Threads report reports on all Threads_ status values.
.TP
\fB\-\-qcache\fR
Print Query Cache report.
.TP
\fB\-\-all\fR
Equivalent to "\-\-dtq \-\-dms \-\-com 3 \-\-sas \-\-qcache".
(Notice \-\-tab is not invoked by \-\-all.)
.TP
\fB\-\-infile FILE\fR
Instead of getting SHOW STATUS values from MySQL, read
values from FILE. FILE is often a copy of the output of
SHOW STATUS including formatting characters (|, +, \-).
mysqlreport expects FILE to have the format
" value number " where value is only alpha and
underscore characters (A\-Z and _) and number is a
positive integer. Anything before, between, or after
value and number is ignored. mysqlreport also needs
the following MySQL server variables: version,
table_cache, max_connections, key_buffer_size,
query_cache_size. These values can be specified in
INFILE in the format "name = value" where name is one
of the aforementioned server variables and value is a
positive integer with or without a trailing M and
possible periods (for version). For example, to specify
an 18M key_buffer_size: key_buffer_size = 18M. Or, a
256 table_cache: table_cache = 256. The M implies
Megabytes not million, so 18M means 18,874,368 not
18,000,000. If these server variables are not specified
the following defaults are used (respectively) which
may cause strange values to be reported: 0.0.0, 64,
100, 8M, 0.
.TP
\fB\-\-outfile FILE\fR
After printing the report to screen, print the report
to FILE too. Internally, mysqlreport always writes the
report to a temp file first: /tmp/mysqlreport.PID on
*nix, c:\mysqlreport.PID on Windows (PID is the
script's process ID). Then it prints the temp file to
screen. Then if \-\-outfile is specified, the temp file
is copied to OUTFILE. After \-\-email (below), the temp
file is deleted.
.TP
\fB\-\-email ADDRESS\fR
After printing the report to screen, email the report
to ADDRESS. This option requires sendmail in
/usr/sbin/, therefore it does not work on Windows.
/usr/sbin/sendmail can be a sym link to qmail, for
example, or any MTA that emulates sendmail's \-t
command line option and operation. The FROM: field is
"mysqlreport", SUBJECT: is "MySQL status report".
.TP
\fB\-\-flush\-status\fR
Execute a "FLUSH STATUS;" after generating the reports.
If you do not have permissions in MySQL to do this an
error from DBD::mysql::st will be printed after the
reports.
.SH "AUTHORS"
.LP
Daniel Nichter
If mysqlreport breaks, send me a message from
http://hackmysql.com/feedback
with the error.
.SH "SEE ALSO"
.LP
mytop(1)
.LP
The comprehensive Guide To Understanding mysqlreport at
http://hackmysql.com/mysqlreportguide.

16
debian/additions/mysqltest.1 vendored Normal file
View file

@ -0,0 +1,16 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
mysqltest \- Regressiontest program for MySQL.
.SH SYNOPSIS
mysqltest [options]
.SH DESCRIPTION
Runs a test against the mysql server and compares output with a results file.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

19
debian/additions/pack_isam.1 vendored Normal file
View file

@ -0,0 +1,19 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
myisampack \- Compresses MySQL database files.
.SH SYNOPSIS
myisampack [options]
.SH DESCRIPTION
Pack a ISAM-table to take much smaller space
Keys are not updated, so you must run isamchk -rq on any table
that has keys after you have compressed it
You should give the .ISM file as the filename argument
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

16
debian/additions/resolve_stack_dump.1 vendored Normal file
View file

@ -0,0 +1,16 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
resolve_stack_dump \- MySQL helper program for reporting bugs.
.SH SYNOPSIS
resolve_stack_dump [options]
.SH DESCRIPTION
Resolve numeric stack strace dump into symbols.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

16
debian/additions/resolveip.1 vendored Normal file
View file

@ -0,0 +1,16 @@
.TH mysql 1 "17 March 2003" "MySQL 3.23" "MySQL database"
.SH NAME
resolveip \- MySQL helper program to retrive IP addresses.
.SH SYNOPSIS
resolveip [options]
.SH DESCRIPTION
Get hostname based on IP-address or IP-address based on hostname.
For more information start the program with '--help'.
.SH "SEE ALSO"
mysql (1), mysqld (1)
.SH AUTHOR
This manpage was written by Christian Hammers <ch@debian.org>.
MySQL is available at http://www.mysql.com/.
.\" end of man page

74
debian/autobake-deb.sh vendored Executable file
View file

@ -0,0 +1,74 @@
#!/bin/bash
# Build MariaDB .deb packages.
# Based on OurDelta .deb packaging scripts, which are in turn based on Debian
# MySQL packages.
# Exit immediately on any error
set -e
# Debug script and command lines
#set -x
# Don't run the mysql-test-run test suite as part of build.
# It takes a lot of time, and we will do a better test anyway in
# Buildbot, running the test suite from installed .debs on a clean VM.
export DEB_BUILD_OPTIONS="nocheck"
# Find major.minor version.
#
source ./VERSION
UPSTREAM="${MYSQL_VERSION_MAJOR}.${MYSQL_VERSION_MINOR}.${MYSQL_VERSION_PATCH}"
RELEASE_EXTRA=${MYSQL_VERSION_EXTRA}
RELEASE_NAME=mariadb
PATCHLEVEL=""
LOGSTRING="MariaDB build"
# Look up distro-version specific stuff.
#
# Libreadline changed to GPLv3. Old GPLv2 version is available, but it
# is called different things on different versions.
CODENAME="$(lsb_release -sc)"
case "${CODENAME}" in
etch) LIBREADLINE_DEV=libreadline-dev ;;
lenny|hardy|intrepid|jaunty|karmic|lucid) LIBREADLINE_DEV='libreadline5-dev | libreadline-dev' ;;
squeeze|maverick|natty) LIBREADLINE_DEV=libreadline5-dev ;;
*) LIBREADLINE_DEV=libreadline-gplv2-dev ;;
esac
# Clean up build file symlinks that are distro-specific. First remove all, then set
# new links.
DISTRODIRS="$(ls ./debian/dist)"
for distrodir in ${DISTRODIRS}; do
DISTROFILES="$(ls ./debian/dist/${distrodir})"
for distrofile in ${DISTROFILES}; do
rm -f "./debian/${distrofile}";
done;
done;
# Set no symlinks for build files in the debian dir, so we avoid adding AppArmor on Debian.
DISTRO="$(lsb_release -si)"
echo "Copying distribution specific build files for ${DISTRO}"
DISTROFILES="$(ls ./debian/dist/${DISTRO})"
for distrofile in ${DISTROFILES}; do
rm -f "./debian/${distrofile}"
sed -e "s/\\\${LIBREADLINE_DEV}/${LIBREADLINE_DEV}/g" < "./debian/dist/${DISTRO}/${distrofile}" > "./debian/${distrofile}"
chmod --reference="./debian/dist/${DISTRO}/${distrofile}" "./debian/${distrofile}"
done;
# Adjust changelog, add new version.
#
echo "Incrementing changelog and starting build scripts"
dch -b -D ${CODENAME} -v "${UPSTREAM}${PATCHLEVEL}-${RELEASE_NAME}${RELEASE_EXTRA:+-${RELEASE_EXTRA}}~${CODENAME}" "Automatic build with ${LOGSTRING}."
echo "Creating package version ${UPSTREAM}${PATCHLEVEL}-${RELEASE_NAME}${RELEASE_EXTRA:+-${RELEASE_EXTRA}}~${CODENAME} ... "
# Build the package.
#
fakeroot dpkg-buildpackage -us -uc
echo "Build complete"
# end of autobake script

23
debian/changelog vendored Normal file
View file

@ -0,0 +1,23 @@
mariadb-5.5 (5.5.1) unstable; urgency=low
* Initial release.
-- Kristian Nielsen <knielsen@askmonty.org> Fri, 6 Jan 2012 15:17:23 -0100
mariadb-5.3 (5.3.0) unstable; urgency=low
* Initial release.
-- Sergei Golubchik <serg@askmonty.org> Mon, 1 Nov 2010 09:16:01 -0100
mariadb-5.2 (5.2.0) unstable; urgency=low
* Initial release.
-- Kristian Nielsen <knielsen@askmonty.org> Wed, 17 Mar 2010 12:54:51 -0100
mariadb-5.1 (5.1.0) unstable; urgency=low
* Initial release.
-- Peter Lieverdink <peter@openquery.com> Tue, 29 Sep 2009 17:05:03 +1000

1
debian/compat vendored Normal file
View file

@ -0,0 +1 @@
5

61
debian/copyright vendored Normal file
View file

@ -0,0 +1,61 @@
== MariaDB ==
The Debian package of MySQL was first debianzed on 1997-04-12 by Christian
Schwarz <schwarz@debian.org> and ist maintained since 1999-04-20 by
Christian Hammers <ch@debian.org>.
The MariaDB packages were initally made by http://ourdelta.org/, and
are now managed by the MariaDB development team,
maria-developers@lists.launchpad.net
MariaDB can be downloaded from http://downloads.askmonty.org/mariadb/
Copyright:
According to the file "COPYING" all parts of this package are licenced
under the terms of the GNU GPL Version 2 of which a copy is available
in /usr/share/common-licenses.
To allow free software with other licences than the GPL to link against the
shared library, special terms for "derived works" are granted in the README file of MySQL 5.5, as follows:
> MySQL FOSS License Exception
> We want free and open source software applications under certain
> licenses to be able to use specified GPL-licensed MySQL client
> libraries despite the fact that not all such FOSS licenses are
> compatible with version 2 of the GNU General Public License.
> Therefore there are special exceptions to the terms and conditions
> of the GPLv2 as applied to these client libraries, which are
> identified and described in more detail in the FOSS License
> Exception at
> <http://www.mysql.com/about/legal/licensing/foss-exception.html>.
The manual had to be removed as it is not free in the sense of the
Debian Free Software Guidelines (DFSG).
== innotop ==
Copyright 2006-2009, Baron Schwartz <baron@xaprb.com>
URL: http://innotop.sourceforge.net
License:
> This software is dual licensed, either GPL version 2 or Artistic License.
>
> This package is free software; you can redistribute it and/or modify
> it under the terms of the GNU General Public License as published by
> the Free Software Foundation; either version 2 of the License, or
> (at your option) any later version.
>
> This package is distributed in the hope that it will be useful,
> but WITHOUT ANY WARRANTY; without even the implied warranty of
> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> GNU General Public License for more details.
>
> You should have received a copy of the GNU General Public License
> along with this package; if not, write to the Free Software
> Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
On Debian systems, the complete text of the GNU General Public License and the
Artistic License can be found in `/usr/share/common-licenses/'.

227
debian/dist/Debian/control vendored Normal file
View file

@ -0,0 +1,227 @@
Source: mariadb-5.5
Section: misc
Priority: optional
Maintainer: MariaDB Developers <maria-developers@lists.launchpad.net>
XSBC-Original-Maintainer: Maria Developers <maria-developers@lists.launchpad.net>
Uploaders: MariaDB Developers <maria-developers@lists.launchpad.net>
Build-Depends: libtool (>= 1.4.2-7), procps | hurd, debhelper, file (>= 3.28), libncurses5-dev (>= 5.0-6), perl (>= 5.6.0), libwrap0-dev (>= 7.6-8.3), zlib1g-dev (>= 1:1.1.3-5), ${LIBREADLINE_DEV}, libevent-dev, libssl-dev, libpam0g-dev, psmisc, po-debconf, chrpath, automake1.9, doxygen, texlive-latex-base, ghostscript | gs-gpl, dpatch, gawk, bison, lsb-release, hardening-wrapper
Standards-Version: 3.8.3
Homepage: http://mariadb.org/
Vcs-Browser: http://bazaar.launchpad.net/~maria-captains/maria/5.5/files
Vcs-Bzr: bzr://lp:maria
Package: libmariadbclient18
Section: libs
Architecture: any
Depends: mariadb-common, libmysqlclient18 (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}
Description: MariaDB database client library
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes the client library.
Package: libmysqlclient18
Section: libs
Architecture: any
Depends: libmariadbclient18 (= ${source:Version})
Replaces: libmysqlclient18 (<< ${source:Version})
Description: Virtual package to satisfy external depends
This is an empty package that provides an updated "best" version of
libmysqlclient18 that does not conflict with the libmariadbclient18
package.
.
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
Package: libmariadbd-dev
Architecture: any
Section: libdevel
Depends: libmariadbclient-dev (>= ${source:Version}), ${misc:Depends}
Provides: libmysqld-dev
Conflicts: libmysqld-dev
Replaces: libmysqld-dev
Description: MariaDB embedded database development files
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes the embedded server library and header files.
Package: libmariadbclient-dev
Architecture: any
Section: libdevel
Depends: libmariadbclient18 (>= ${source:Version}), zlib1g-dev, , ${shlibs:Depends}, ${misc:Depends}
Replaces: libmariadbclient16-dev, libmysqlclient16-dev
Conflicts: libmysqlclient-dev, libmariadbclient16-dev, libmysqlclient14-dev, libmysqlclient12-dev, libmysqlclient10-dev, libmysqlclient15-dev, libmysqlclient16-dev
Provides: libmysqlclient-dev
Description: MariaDB database development files
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes development libraries and header files.
Package: mysql-common
Section: database
Architecture: all
Depends: ${shlibs:Depends}, ${misc:Depends}
Provides: mariadb-common
Description: MariaDB database common files (e.g. /etc/mysql/my.cnf)
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes files needed by all versions of the client library
(e.g. /etc/mysql/my.cnf).
.
Due to libmysqlclient15off package depends, this package has not yet been
renamed to mariadb-common. It does, however, already contain a new my.cnf
file with mariadb-specific configuration options.
Package: mariadb-client-core-5.5
Architecture: any
Depends: mariadb-common, libmariadbclient18 (>= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}
Provides: mysql-client-core, mysql-client-core-5.1, mysql-client-core-5.5
Conflicts: mysql-client (<< 5.0.51), mysql-client-5.0, mysql-client-5.1, mysql-client-5.5,
mysql-client-core-5.1, mysql-client-core-5.5,
mariadb-client-5.1, mariadb-client-core-5.1,
mariadb-client-5.2, mariadb-client-core-5.2,
mariadb-client-5.3, mariadb-client-core-5.3
Replaces: mysql-client (<< 5.0.51), mysql-client-5.0, mysql-client-5.1, mysql-client-5.5,
mysql-client-core-5.1, mysql-client-core-5.5,
mariadb-client-5.1, mariadb-client-core-5.1,
mariadb-client-5.2, mariadb-client-core-5.2,
mariadb-client-5.3, mariadb-client-core-5.3
Description: MariaDB database core client binaries
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes the core client files, as used by Akonadi.
Package: mariadb-client-5.5
Architecture: any
Depends: debianutils (>=1.6), libdbi-perl, libdbd-mysql-perl (>= 1.2202), mariadb-common, libmariadbclient18 (>= ${source:Version}), mariadb-client-core-5.5 (>= ${source:Version}), ${perl:Depends}, ${shlibs:Depends}, ${misc:Depends}
Provides: virtual-mysql-client, mysql-client,
mysql-client-4.1, mysql-client-5.1, mysql-client-5.5
Conflicts: mysql-client (<< 5.0.51), mysql-client-5.0, mysql-client-5.1,
mariadb-client (<< ${source:Version}),
mariadb-client-5.1, mariadb-client-5.2, mariadb-client-5.3
Replaces: mysql-client (<< 5.0.51), mysql-client-5.0, mysql-client-5.1,
mariadb-client (<< ${source:Version}),
mariadb-client-5.1, mariadb-client-5.2, mariadb-client-5.3
Description: MariaDB database client binaries
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes the client binaries and the additional tools
innotop and mysqlreport.
Package: mariadb-server-core-5.5
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, libmariadbclient18 (>= ${binary:Version})
Provides: mysql-server-core, mysql-server-core-5.1, mysql-server-core-5.5
Conflicts: mariadb-server-5.1 (<< 5.1.60),
mariadb-server-5.2 (<< 5.2.10),
mariadb-server-5.3 (<< 5.3.3),
mysql-server-5.0,
mysql-server-core-5.0, mysql-server-core-5.1, mysql-server-core-5.5,
mariadb-server-core-5.1, mariadb-server-core-5.2, mariadb-server-core-5.5
Replaces: mariadb-server-5.1 (<< 5.1.60),
mariadb-server-5.2 (<< 5.2.10),
mariadb-server-5.3 (<< 5.3.3),
mysql-server-5.0,
mysql-server-core-5.0, mysql-server-core-5.1, mysql-server-core-5.5,
mariadb-server-core-5.1, mariadb-server-core-5.2, mariadb-server-core-5.5
Description: MariaDB database core server files
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes the core server files, as used by Akonadi.
Package: mariadb-test-5.5
Section: database
Architecture: all
Depends: mariadb-server-5.5 (= ${source:Version}), mariadb-client-5.5 (= ${source:Version})
Conflicts: mariadb-test (<< ${source:Version}),
mariadb-test-5.1, mariadb-test-5.2, mariadb-test-5.3
Replaces: mariadb-test (<< ${source:Version}),
mariadb-test-5.1, mariadb-test-5.2, mariadb-test-5.3
Description: MariaDB database regression test suite
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes the regression test suite.
Package: mariadb-server-5.5
Architecture: any
Suggests: tinyca, mailx, mariadb-test
Recommends: libhtml-template-perl
Pre-Depends: mariadb-common, adduser (>= 3.40), debconf
Depends: mariadb-client-5.5 (>= ${source:Version}), libdbi-perl, perl (>= 5.6), ${shlibs:Depends}, ${misc:Depends}, psmisc, passwd, lsb-base (>= 3.0-10), mariadb-server-core-5.5 (>= ${binary:Version})
Provides: mariadb-server, mysql-server, virtual-mysql-server
Conflicts: mariadb-server (<< ${source:Version}), mysql-server (<< ${source:Version}),
mysql-server-4.1, mysql-server-5.0, mysql-server-5.1,
mariadb-server-5.1, mariadb-server-5.2, mariadb-server-5.3,
libmariadbclient16 (<< 5.3.4)
Replaces: mariadb-server (<< ${source:Version}), mysql-server (<< ${source:Version}),
mysql-server-4.1, mysql-server-5.0, mysql-server-5.1,
mariadb-server-5.1, mariadb-server-5.2, mariadb-server-5.3,
libmariadbclient16 (<< 5.3.4),
libmariadbclient-dev (<< 5.5.0)
Description: MariaDB database server binaries
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes the server binaries.
Package: mariadb-server
Section: database
Architecture: all
Depends: mariadb-server-5.5, ${misc:Depends}
Description: MariaDB database server (metapackage depending on the latest version)
This is an empty package that depends on the current "best" version of
mariadb-server (currently mariadb-server-5.5), as determined by the MariaDB
maintainers. Install this package if in doubt about which MariaDB
version you need. That will install the version recommended by the
package maintainers.
.
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
Package: mariadb-client
Section: database
Architecture: all
Depends: mariadb-client-5.5, ${misc:Depends}
Description: MariaDB database client (metapackage depending on the latest version)
This is an empty package that depends on the current "best" version of
mariadb-client (currently mariadb-client-5.5), as determined by the MariaDB
maintainers. Install this package if in doubt about which MariaDB version
you want, as this is the one we consider to be in the best shape.
Package: mariadb-test
Section: database
Architecture: all
Depends: mariadb-test-5.5
Description: MariaDB database regression test suite (metapackage depending on the latest version)
This is an empty package that depends on the current "best" version of
mariadb-test (currently mariadb-test-5.5), as determined by the MariaDB
maintainers.

View file

@ -0,0 +1,109 @@
* MYSQL WON'T START OR STOP?:
=============================
You may never ever delete the special mysql user "debian-sys-maint". This
user together with the credentials in /etc/mysql/debian.cnf are used by the
init scripts to stop the server as they would require knowledge of the mysql
root users password else.
So in most of the times you can fix the situation by making sure that the
debian.cnf file contains the right password, e.g. by setting a new one
(remember to do a "flush privileges" then).
* WHAT TO DO AFTER UPGRADES:
============================
The privilege tables are automatically updated so all there is left is read
the changelogs on dev.mysql.com to see if any changes affect custom apps.
* WHAT TO DO AFTER INSTALLATION:
================================
The MySQL manual describes certain steps to do at this stage in a separate
chapter. They are not necessary as the Debian packages does them
automatically.
The only thing that is left over for the admin is
- setting the passwords
- creating new users and databases
- read the rest of this text
* DOWNGRADING TO 4.0 or 4.1:
============================
Unsupported. Period.
But if you do and get problems or make interesting experiences, mail me, it
might help others.
Ok, if you really want, I would recommend to "mysqldump --opt" all tables,
then purge 4.1, delete /var/lib/mysql, install 4.0 and insert the dumps. Be
carefully, though, with the "mysql" table, you might not simply overwrite that
one as the password for the mysql "debian-sys-maint" user is stored in
/etc/mysql/debian.cnf and needed by /etc/init.d/ to start mysql and check if
it's alive.
* SOME APPLICATION CAN NO LONGER CONNECT:
=========================================
This application is probably linked against libmysqlclient12 or below and
somebody has created a mysql user with new-style passwords.
The old_passwords=1 option in /etc/mysql/my.cnf might help. If not the
application that inserted the user has to be changed or the application that
tries to connect updated to libmysqlclient14 or -15.
* NETWORKING:
=============
For security reasons, the Debian package has enabled networking only on the
loop-back device using "bind-address" in /etc/mysql/my.cnf. Check with
"netstat -tlnp" where it is listening. If your connection is aborted
immediately see if "mysqld: all" or similar is in /etc/hosts.allow and read
hosts_access(5).
* WHERE IS THE DOCUMENTATION?:
==============================
Unfortunately due to licensing restrictions, debian currently not able
to provide the mysql-doc package in any format. For the most up to date
documentation, please go to http://dev.mysql.com/doc.
* PASSWORDS:
============
It is strongly recommended to set a password for the mysql root user (which
/usr/bin/mysql -u root -D mysql -e "update user set password=password('new-password') where user='root'"
/usr/bin/mysql -u root -e "flush privileges"
If you already had a password set add "-p" before "-u" to the lines above.
If you are tired to type the password in every time or want to automate your
scripts you can store it in the file $HOME/.my.cnf. It should be chmod 0600
(-rw------- username username .my.cnf) to ensure that nobody else can read
it. Every other configuration parameter can be stored there, too. You will
find an example below and more information in the MySQL manual in
/usr/share/doc/mariadb-doc or www.mysql.com.
ATTENTION: It is necessary, that a .my.cnf from root always contains a "user"
line wherever there is a "password" line, else, the Debian maintenance
scripts, that use /etc/mysql/debian.cnf, will use the username
"debian-sys-maint" but the password that is in root's .my.cnf. Also note,
that every change you make in the /root/.my.cnf will affect the mysql cron
script, too.
# an example of $HOME/.my.cnf
[client]
user = your-mysql-username
password = enter-your-good-new-password-here
* BIG_ROWS FOR EVEN MORE ROWS IN A TABLE:
=========================================
If you ever run out of rows in a table there is the possibility of building
the package with "-DBIG_ROWS" which, according to a MySQL employee on
packagers@lists.mysql.com should lead to a 64bit row index (I guess > 2^32
rows) but also to an approx. 5% performance loss.
* BerkeleyDB Storage Engine
===========================
Support for BerkeleyDB has been removed in 5.1, and consequently both the
have-bdb and skip-bdb configuration options will cause the server to fail.
Removing the options from /etc/mysql/my.cnf will fix this problem.
* FURTHER NOTES ON REPLICATION
===============================
If the MySQL server is acting as a replication slave, you should not
set --tmpdir to point to a directory on a memory-based filesystem or to
a directory that is cleared when the server host restarts. A replication
slave needs some of its temporary files to survive a machine restart so
that it can replicate temporary tables or LOAD DATA INFILE operations. If
files in the temporary file directory are lost when the server restarts,
replication fails.

View file

@ -0,0 +1,10 @@
etc/init.d
etc/logrotate.d
etc/mysql/conf.d
usr/bin
usr/sbin
usr/share/man/man8
usr/share/mysql
usr/share/doc/mariadb-server-5.3
var/run/mysqld
var/lib/mysql-upgrade

View file

@ -0,0 +1,61 @@
usr/lib/mysql/plugin/
usr/lib/libhsclient.so.*
etc/mysql/debian-start
etc/mysql/conf.d/mysqld_safe_syslog.cnf
usr/bin/msql2mysql
usr/bin/my_print_defaults
usr/bin/myisamchk
usr/bin/myisam_ftdump
usr/bin/myisamlog
usr/bin/myisampack
usr/bin/aria_pack
usr/bin/aria_read_log
usr/bin/aria_ftdump
usr/bin/aria_chk
usr/bin/aria_dump_log
usr/bin/mysql_convert_table_format
usr/bin/mysql_install_db
usr/bin/mysql_secure_installation
usr/bin/mysql_setpermission
usr/bin/mysql_tzinfo_to_sql
usr/bin/mysql_upgrade
usr/bin/mysql_zap
usr/bin/mysqlbinlog
usr/bin/mysqld_multi
usr/bin/mysqld_safe
usr/bin/mysqlhotcopy
usr/bin/perror
usr/bin/replace
usr/bin/resolve_stack_dump
usr/bin/resolveip
usr/share/doc/mariadb-server-5.5/mysqld.sym.gz
usr/share/lintian/overrides/mariadb-server-5.5
usr/share/man/man1/msql2mysql.1
usr/share/man/man1/myisamchk.1
usr/share/man/man1/myisam_ftdump.1
usr/share/man/man1/myisamlog.1
usr/share/man/man1/myisampack.1
usr/share/man/man1/my_print_defaults.1
usr/share/man/man1/mysqlbinlog.1
usr/share/man/man1/mysql_convert_table_format.1
usr/share/man/man1/mysqld_multi.1
usr/share/man/man1/mysqld_safe.1
usr/share/man/man1/mysqlhotcopy.1
usr/share/man/man1/mysql_install_db.1
usr/share/man/man1/mysql_secure_installation.1
usr/share/man/man1/mysql_setpermission.1
usr/share/man/man1/mysql_upgrade.1
usr/share/man/man1/mysql_zap.1
usr/share/man/man1/perror.1
usr/share/man/man1/replace.1
usr/share/man/man1/resolveip.1
usr/share/man/man1/resolve_stack_dump.1
usr/share/man/man1/innochecksum.1
usr/share/man/man1/mysql_tzinfo_to_sql.1
usr/share/mysql/debian-start.inc.sh
usr/share/mysql/echo_stderr
usr/share/mysql/errmsg-utf8.txt
usr/share/mysql/fill_help_tables.sql
usr/share/mysql/mysql_system_tables_data.sql
usr/share/mysql/mysql_system_tables.sql
usr/share/mysql/mysql_test_data_timezone.sql

View file

@ -0,0 +1,268 @@
#!/bin/bash -e
. /usr/share/debconf/confmodule
if [ -n "$DEBIAN_SCRIPT_DEBUG" ]; then set -v -x; DEBIAN_SCRIPT_TRACE=1; fi
${DEBIAN_SCRIPT_TRACE:+ echo "#42#DEBUG# RUNNING $0 $*" 1>&2 }
export PATH=$PATH:/sbin:/usr/sbin:/bin:/usr/bin
# This command can be used as pipe to syslog. With "-s" it also logs to stderr.
ERR_LOGGER="logger -p daemon.err -t mysqld_safe -i"
# This will make an error in a logged command immediately apparent by aborting
# the install, rather than failing silently and leaving a broken install.
set -o pipefail
invoke() {
if [ -x /usr/sbin/invoke-rc.d ]; then
invoke-rc.d mysql $1
else
/etc/init.d/mysql $1
fi
}
MYSQL_BOOTSTRAP="/usr/sbin/mysqld --bootstrap --user=mysql --skip-grant-tables --innodb=OFF --pbxt=OFF --default-storage-engine=myisam"
test_mysql_access() {
mysql --no-defaults -u root -h localhost </dev/null >/dev/null 2>&1
}
# call with $1 = "online" to connect to the server, otherwise it bootstraps
set_mysql_rootpw() {
# forget we ever saw the password. don't use reset to keep the seen status
db_set mysql-server/root_password ""
tfile=`mktemp`
if [ ! -f "$tfile" ]; then
return 1
fi
# this avoids us having to call "test" or "[" on $rootpw
cat << EOF > $tfile
USE mysql;
UPDATE user SET password=PASSWORD("$rootpw") WHERE user='root';
FLUSH PRIVILEGES;
EOF
if grep -q 'PASSWORD("")' $tfile; then
retval=0
elif [ "$1" = "online" ]; then
mysql --no-defaults -u root -h localhost <$tfile >/dev/null
retval=$?
else
$MYSQL_BOOTSTRAP <$tfile
retval=$?
fi
rm -f $tfile
return $retval
}
# This is necessary because mysql_install_db removes the pid file in /var/run
# and because changed configuration options should take effect immediately.
# In case the server wasn't running at all it should be ok if the stop
# script fails. I can't tell at this point because of the cleaned /var/run.
set +e; invoke stop; set -e
case "$1" in
configure)
mysql_datadir=/usr/share/mysql
mysql_statedir=/var/lib/mysql
mysql_rundir=/var/run/mysqld
mysql_logdir=/var/log
mysql_cfgdir=/etc/mysql
mysql_newlogdir=/var/log/mysql
mysql_upgradedir=/var/lib/mysql-upgrade
# first things first, if the following symlink exists, it is a preserved
# copy the old data dir from a mysql upgrade that would have otherwise
# been replaced by an empty mysql dir. this should restore it.
for dir in DATADIR LOGDIR; do
if [ "$dir" = "DATADIR" ]; then targetdir=$mysql_statedir; else targetdir=$mysql_newlogdir; fi
savelink="$mysql_upgradedir/$dir.link"
if [ -L "$savelink" ]; then
# If the targetdir was a symlink before we upgraded it is supposed
# to be either still be present or not existing anymore now.
if [ -L "$targetdir" ]; then
rm "$savelink"
elif [ ! -d "$targetdir" ]; then
mv "$savelink" "$targetdir"
else
# this should never even happen, but just in case...
mysql_tmp=`mktemp -d -t mysql-symlink-restore-XXXXXX`
echo "this is very strange! see $mysql_tmp/README..." >&2
mv "$targetdir" "$mysql_tmp"
cat << EOF > "$mysql_tmp/README"
if you're reading this, it's most likely because you had replaced /var/lib/mysql
with a symlink, then upgraded to a new version of mysql, and then dpkg
removed your symlink (see #182747 and others). the mysql packages noticed
that this happened, and as a workaround have restored it. however, because
/var/lib/mysql seems to have been re-created in the meantime, and because
we don't want to rm -rf something we don't know as much about, we're going
to leave this unexpected directory here. if your database looks normal,
and this is not a symlink to your database, you should be able to blow
this all away.
EOF
fi
fi
rmdir $mysql_upgradedir 2>/dev/null || true
done
# Ensure the existence and right permissions for the database and
# log files.
if [ ! -d "$mysql_statedir" -a ! -L "$mysql_statedir" ]; then mkdir "$mysql_statedir"; fi
if [ ! -d "$mysql_statedir/mysql" -a ! -L "$mysql_statedir/mysql" ]; then mkdir "$mysql_statedir/mysql"; fi
if [ ! -d "$mysql_newlogdir" -a ! -L "$mysql_newlogdir" ]; then mkdir "$mysql_newlogdir"; fi
# When creating an ext3 jounal on an already mounted filesystem like e.g.
# /var/lib/mysql, you get a .journal file that is not modifyable by chown.
# The mysql_datadir must not be writable by the mysql user under any
# circumstances as it contains scripts that are executed by root.
set +e
chown -R 0:0 $mysql_datadir
chown -R mysql $mysql_statedir
chown -R mysql $mysql_rundir
chown -R mysql:adm $mysql_newlogdir; chmod 2750 $mysql_newlogdir;
for i in log err; do
touch $mysql_logdir/mysql.$i
chown mysql:adm $mysql_logdir/mysql.$i
chmod 0640 $mysql_logdir/mysql.$i
done
set -e
# This is important to avoid dataloss when there is a removed
# mysql-server version from Woody lying around which used the same
# data directory and then somewhen gets purged by the admin.
db_set mysql-server/postrm_remove_database false || true
# To avoid downgrades.
touch $mysql_statedir/debian-5.5.flag
# initiate databases. Output is not allowed by debconf :-(
# This will fail if we are upgrading an existing database; in this case
# mysql_upgrade, called from the /etc/init.d/mysql start script, will
# handle things.
# Debian: beware of the bashisms...
# Debian: can safely run on upgrades with existing databases
set +e
/bin/bash /usr/bin/mysql_install_db --rpm --user=mysql 2>&1 | $ERR_LOGGER
set -e
## On every reconfiguration the maintenance user is recreated.
#
# - It is easier to regenerate the password every time but as people
# use fancy rsync scripts and file alteration monitors, the existing
# password is used and existing files not touched.
# - The mysqld statement is like that in mysql_install_db because the
# server is not already running. This has some implications:
# - The amount of newlines and semicolons in the query is important!
# - GRANT is not possible with --skip-grant-tables and "INSERT
# (user,host..) VALUES" is not --ansi compliant
# - The echo is just for readability. ash's buildin has no "-e" so use /bin/echo.
# - The Super_priv, Show_db_priv, Create_tmp_table_priv and Lock_tables_priv
# may not be present as old Woody 3.23 databases did not have it and the
# admin might not already have run mysql_upgrade which adds them.
# As the binlog cron scripts to need at least the Super_priv, I do first
# the old query which always succeeds and then the new which may or may not.
# recreate the credentials file if not present or without mysql_upgrade stanza
dc=$mysql_cfgdir/debian.cnf;
if [ -e "$dc" -a -n "`fgrep mysql_upgrade $dc 2>/dev/null`" ]; then
pass="`sed -n 's/^[ ]*password *= *// p' $dc | head -n 1`"
else
pass=`perl -e 'print map{("a".."z","A".."Z",0..9)[int(rand(62))]}(1..16)'`;
if [ ! -d "$mysql_cfgdir" ]; then install -o 0 -g 0 -m 0755 -d $mysql_cfgdir; fi
cat /dev/null > $dc
echo "# Automatically generated for Debian scripts. DO NOT TOUCH!" >>$dc
echo "[client]" >>$dc
echo "host = localhost" >>$dc
echo "user = debian-sys-maint" >>$dc
echo "password = $pass" >>$dc
echo "socket = $mysql_rundir/mysqld.sock" >>$dc
echo "[mysql_upgrade]" >>$dc
echo "host = localhost" >>$dc
echo "user = debian-sys-maint" >>$dc
echo "password = $pass" >>$dc
echo "socket = $mysql_rundir/mysqld.sock" >>$dc
echo "basedir = /usr" >>$dc
fi
# If this dir chmod go+w then the admin did it. But this file should not.
chown 0:0 $dc
chmod 0600 $dc
# update privilege tables
password_column_fix_query=`/bin/echo -e \
"USE mysql\n" \
"ALTER TABLE user CHANGE Password Password char(41) character set latin1 collate latin1_bin DEFAULT '' NOT NULL"`;
replace_query=`/bin/echo -e \
"USE mysql\n" \
"SET sql_mode='';\n" \
"REPLACE INTO user SET " \
" host='localhost', user='debian-sys-maint', password=password('$pass'), " \
" Select_priv='Y', Insert_priv='Y', Update_priv='Y', Delete_priv='Y', " \
" Create_priv='Y', Drop_priv='Y', Reload_priv='Y', Shutdown_priv='Y', " \
" Process_priv='Y', File_priv='Y', Grant_priv='Y', References_priv='Y', " \
" Index_priv='Y', Alter_priv='Y', Super_priv='Y', Show_db_priv='Y', "\
" Create_tmp_table_priv='Y', Lock_tables_priv='Y', Execute_priv='Y', "\
" Repl_slave_priv='Y', Repl_client_priv='Y', Create_view_priv='Y', "\
" Show_view_priv='Y', Create_routine_priv='Y', Alter_routine_priv='Y', "\
" Create_user_priv='Y', Event_priv='Y', Trigger_priv='Y',"\
" ssl_cipher='', x509_issuer='', x509_subject='';"`;
# Engines supported by etch should be installed per default. The query sequence is supposed
# to be aborted if the CREATE TABLE fails due to an already existent table in which case the
# admin might already have chosen to remove one or more plugins. Newlines are necessary.
install_plugins=`/bin/echo -e \
"USE mysql;\n" \
"CREATE TABLE plugin (name char(64) COLLATE utf8_bin NOT NULL DEFAULT '', " \
" dl char(128) COLLATE utf8_bin NOT NULL DEFAULT '', " \
" PRIMARY KEY (name)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='MySQL plugins';" `
# Upgrade password column format before the root password gets set.
echo "$password_column_fix_query" | $MYSQL_BOOTSTRAP 2>&1 | $ERR_LOGGER
db_get mysql-server/root_password && rootpw="$RET"
if ! set_mysql_rootpw; then
password_error="yes"
fi
set +e
echo "$replace_query" | $MYSQL_BOOTSTRAP 2>&1 | $ERR_LOGGER
echo "$install_plugins" | $MYSQL_BOOTSTRAP 2>&1 | $ERR_LOGGER
set -e
;;
abort-upgrade|abort-remove|abort-configure)
;;
*)
echo "postinst called with unknown argument '$1'" 1>&2
exit 1
;;
esac
# here we check to see if we can connect as root without a password
# this should catch upgrades from previous versions where the root
# password wasn't set. if there is a password, or if the connection
# fails for any other reason, nothing happens.
if [ "$1" = "configure" ]; then
if test_mysql_access; then
db_input medium mysql-server/root_password || true
db_go
db_get mysql-server/root_password && rootpw="$RET"
if ! set_mysql_rootpw "online"; then
password_error="yes"
fi
fi
if [ "$password_error" = "yes" ]; then
db_input high mysql-server/error_setting_password || true
db_go
fi
fi
db_stop # in case invoke failes
#DEBHELPER#
exit 0

View file

@ -0,0 +1,83 @@
#!/bin/bash -e
# It is possible that Debconf has already been removed, too.
if [ -f /usr/share/debconf/confmodule ]; then
. /usr/share/debconf/confmodule
fi
if [ -n "$DEBIAN_SCRIPT_DEBUG" ]; then set -v -x; DEBIAN_SCRIPT_TRACE=1; fi
${DEBIAN_SCRIPT_TRACE:+ echo "#42#DEBUG# RUNNING $0 $*" 1>&2 }
MYADMIN="/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf"
# Try to stop the server in a sane way. If it does not success let the admin
# do it himself. No database directories should be removed while the server
# is running!
stop_server() {
set +e
if [ -x /usr/sbin/invoke-rc.d ]; then
invoke-rc.d mysql stop
else
/etc/init.d/mysql stop
fi
errno=$?
set -e
if [ "$?" != 0 ]; then
echo "Trying to stop the MySQL server resulted in exitcode $?." 1>&2
echo "Stop it yourself and try again!" 1>&2
exit 1
fi
}
case "$1" in
purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
if [ -n "`$MYADMIN ping 2>/dev/null`" ]; then
stop_server
sleep 2
fi
;;
*)
echo "postrm called with unknown argument '$1'" 1>&2
exit 1
;;
esac
#
# - Do NOT purge logs or data if another mysql-sever* package is installed (#307473)
# - Remove the mysql user only after all his owned files are purged.
#
if [ "$1" = "purge" -a ! \( -x /usr/sbin/mysqld -o -L /usr/sbin/mysqld \) ]; then
# we remove the mysql user only after all his owned files are purged
rm -f /var/log/mysql.{log,err}{,.0,.[1234567].gz}
rm -rf /var/log/mysql
db_input high mysql-server-5.1/postrm_remove_databases || true
db_go || true
db_get mysql-server-5.1/postrm_remove_databases || true
if [ "$RET" = "true" ]; then
# never remove the debian.cnf when the databases are still existing
# else we ran into big trouble on the next install!
rm -f /etc/mysql/debian.cnf
rm -rf /var/lib/mysql
rm -rf /var/run/mysqld
userdel mysql || true
fi
# (normally) Automatically added by dh_installinit
if [ "$1" = "purge" ] ; then
update-rc.d mysql remove >/dev/null || exit 0
fi
# (normally) End automatically added section
fi
# (normally) Automatically added by dh_installdebconf
if [ "$1" = purge ] && [ -e /usr/share/debconf/confmodule ]; then
. /usr/share/debconf/confmodule
db_purge
fi
# (normally) End automatically added section
# no DEBHELPER here, "update-rc.d remove" fails if mysql-server-5.1 is installed
exit 0

294
debian/dist/Debian/rules vendored Executable file
View file

@ -0,0 +1,294 @@
#!/usr/bin/make -f
export DH_VERBOSE=1
export DEB_BUILD_HARDENING=1
PACKAGE=mariadb-5.5
include /usr/share/dpatch/dpatch.make
TMP=$(CURDIR)/debian/tmp/
ARCH = $(shell dpkg-architecture -qDEB_BUILD_ARCH)
ARCH_OS = $(shell dpkg-architecture -qDEB_BUILD_ARCH_OS)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEBVERSION = $(shell dpkg-parsechangelog | awk '/^Version: / { print $$2 }' | sed 's/^.*-//' )
DEB_SOURCE_PACKAGE ?= $(strip $(shell egrep '^Source: ' debian/control | cut -f 2 -d ':'))
DEB_VERSION ?= $(shell dpkg-parsechangelog | egrep '^Version:' | cut -f 2 -d ' ')
DEB_NOEPOCH_VERSION ?= $(shell echo $(DEB_VERSION) | cut -d: -f2-)
DEB_UPSTREAM_VERSION ?= $(shell echo $(DEB_NOEPOCH_VERSION) | sed 's/-[^-]*$$//')
DEB_UPSTREAM_VERSION_MAJOR_MINOR := $(shell echo $(DEB_UPSTREAM_VERSION) | sed -r -n 's/^([0-9]+\.[0-9]+).*/\1/p')
DISTRIBUTION = $(shell lsb_release -i -s)
RELEASE = $(shell lsb_release -r -s | sed 's/\..*//' )
MAKE_J = -j$(shell if [ -f /proc/cpuinfo ] ; then grep -c processor.* /proc/cpuinfo ; else echo 1 ; fi)
ifeq (${MAKE_J}, -j0)
MAKE_J = -j1
endif
MAKE_TEST_TARGET=test-force
ifneq ($(findstring fulltest,$(DEB_BUILD_OPTIONS)),)
# make test-bt is the testsuite run by the MySQL build team
# before a release, but it is long
MAKE_TEST_TARGET=test-bt
endif
USE_ASSEMBLER=--enable-assembler
ifneq (,$(filter $(ARCH), amd64 i386 ia64 s390))
TESTSUITE_FAIL_CMD=exit 1
else
TESTSUITE_FAIL_CMD=true
endif
BUILDDIR = builddir
builddir = $(BUILDDIR)
# This causes seg11 crashes if LDAP is used for groups in /etc/nsswitch.conf
# so it is disabled by default although, according to MySQL, it brings >10%
# performance gain if enabled. See #299382.
ifeq ($(STATIC_MYSQLD), 1)
USE_STATIC_MYSQLD=--with-mysqld-ldflags=-all-static
endif
configure: patch configure-stamp
configure-stamp:
@echo "RULES.$@"
dh_testdir
ifneq ($(ARCH_OS),hurd)
if [ ! -d /proc/self ]; then echo "/proc IS NEEDED" 1>&2; exit 1; fi
endif
( test -d $(builddir) || mkdir $(builddir) ) && cd $(builddir) && \
sh -c 'PATH=$${MYSQL_BUILD_PATH:-"/bin:/usr/bin"} \
CC=$${MYSQL_BUILD_CC:-gcc} \
CFLAGS=$${MYSQL_BUILD_CFLAGS:-"-O2 -fno-omit-frame-pointer -g -pipe -Wall -Wno-uninitialized"} \
CXX=$${MYSQL_BUILD_CXX:-g++} \
CXXFLAGS=$${MYSQL_BUILD_CXXFLAGS:-"-O2 -fno-omit-frame-pointer -g -pipe -Wall -Wno-uninitialized"} \
cmake .. \
-DCMAKE_INSTALL_PREFIX=/usr \
-DINSTALL_SBINDIR=sbin \
-DMYSQL_DATADIR=/var/lib/mysql \
-DINSTALL_INCLUDEDIR=include \
-DINSTALL_INFODIR=share/info \
-DINSTALL_MANDIR=share/man \
\
-DMYSQL_SERVER_SUFFIX="-$(DEBVERSION)" \
-DWITH_COMMENT="(MariaDB - http://mariadb.com/)" \
-DSYSTEM_TYPE="debian-linux-gnu" \
-DINSTALL_LAYOUT=DEB \
\
-DENABLED_LOCAL_INFILE=1 \
-DWITH_FAST_MUTEXES=1 \
\
-DMYSQL_UNIX_ADDR=/var/run/mysqld/mysqld.sock \
-DMYSQL_USER=mysql \
\
-DEXTRA_CHARSETS=all \
-DWITH_LIBWRAP=1 \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
-DWITH_EMBEDDED_SERVER=1 \
-DHAVE_EMBEDDED_PRIVILEGE_CONTROL=ON \
-DWITH_MAX=1'
touch $@
build: build-stamp
build-stamp: configure
@echo "RULES.$@"
dh_testdir
cd $(builddir) && $(MAKE) $(MAKE_J)
ifeq ($(findstring nocheck,$(DEB_BUILD_OPTIONS)),)
# Don't know why the following is necessary...
cp unittest/unit.pl $(builddir)/unittest/
cp -r mysql-test/* $(builddir)/mysql-test/
cp -r sql/share/* $(builddir)/sql/share/
cp -r scripts/*sql $(builddir)/scripts/
if [ ! -f testsuite-stamp ] ; then \
cd $(builddir) && $(MAKE) $(MAKE_TEST_TARGET) || $(TESTSUITE_FAIL_CMD) ; \
fi
endif
touch testsuite-stamp
touch build-stamp
clean: clean-patched unpatch
rm -rf debian/patched
clean-patched:
@echo "RULES.clean-patched"
dh_testdir
dh_testroot
rm -f configure-stamp*
rm -f build-stamp*
rm -f testsuite-stamp
#
[ ! -f Makefile ] || $(MAKE) clean
[ ! -d mysql-test/var ] || rm -rf mysql-test/var
#
rm -rf $(BUILDDIR)
debconf-updatepo
dh_clean -v
install: build
@echo "RULES.$@"
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
# some self written manpages which hopefully
# gets overwritten sooner or later with upstreams
mkdir -p $(TMP)/usr/share/man/man1/
mkdir -p $(TMP)/usr/share/man/man8/
cp debian/additions/*.1 $(TMP)/usr/share/man/man1/
mkdir -p $(TMP)/etc/mysql/conf.d/
cp debian/additions/mysqld_safe_syslog.cnf $(TMP)/etc/mysql/conf.d/
# make install (trailing slash needed for innobase)
cd $(builddir) && $(MAKE) install DESTDIR=$(TMP)/
#
# After installing, remove rpath to make lintian happy.
set +e; \
find ./debian/tmp/ -type f -print0 \
| xargs -0 --no-run-if-empty chrpath -k 2>/dev/null \
| fgrep RPATH= \
| cut -d: -f 1 \
| xargs --no-run-if-empty chrpath -d; \
set -e
# libmysqlclient-dev: forgotten header file since 3.23.25?
cp $(BUILDDIR)/include/my_config.h $(TMP)/usr/include/mysql/
cp include/my_dir.h $(TMP)/usr/include/mysql/
# mysql-common: We now provide our own config file.
# can't be mariadb-common, other packages insist
install -d $(TMP)/etc/mysql
install -m 0644 debian/additions/my.cnf $(TMP)/etc/mysql/my.cnf
# mariadb-client
install -m 0755 debian/additions/mysqlreport $(TMP)/usr/bin/
install -m 0755 debian/additions/innotop/innotop $(TMP)/usr/bin/
install -m 0644 debian/additions/innotop/innotop.1 $(TMP)/usr/share/man/man1/
# mariadb-server
install -m 0755 $(BUILDDIR)/scripts/mysqld_safe $(TMP)/usr/bin/mysqld_safe
mkdir -p $(TMP)/usr/share/doc/mariadb-server-5.5/examples
# We have a sane my.cnf, cruft not needed (remove my-*.cnf and config-*.cnf)
# $(TMP)/usr/share/mysql/*cnf $(TMP)/usr/share/doc/mariadb-server-5.3/examples/
rm -vf $(TMP)/usr/share/mysql/my-*.cnf \
$(TMP)/usr/share/mysql/config-*.cnf \
$(TMP)/usr/share/mysql/mi_test_all* \
$(TMP)/usr/share/mysql/mysql-log-rotate \
$(TMP)/usr/share/mysql/mysql.server \
$(TMP)/usr/share/mysql/binary-configure
nm -n $(BUILDDIR)/sql/mysqld |gzip -9 > $(TMP)/usr/share/doc/mariadb-server-5.5/mysqld.sym.gz
install -m 0755 debian/additions/echo_stderr $(TMP)/usr/share/mysql/
install -m 0755 debian/additions/debian-start $(TMP)/etc/mysql/
install -m 0755 debian/additions/debian-start.inc.sh $(TMP)/usr/share/mysql/
# mariadb-test
mv $(TMP)/usr/mysql-test $(TMP)/usr/share/mysql
# lintian overrides
mkdir -p $(TMP)/usr/share/lintian/overrides/
cp debian/mysql-common.lintian-overrides $(TMP)/usr/share/lintian/overrides/mysql-common
cp debian/mariadb-server-5.5.lintian-overrides $(TMP)/usr/share/lintian/overrides/mariadb-server-5.5
cp debian/mariadb-client-5.5.lintian-overrides $(TMP)/usr/share/lintian/overrides/mariadb-client-5.5
# For 5.0 -> 5.5 transition
d=$(TMP)/usr/share/mysql-common/internal-use-only/; \
mkdir -p $$d; \
cp debian/mariadb-server-5.5.mysql.init $$d/_etc_init.d_mysql; \
cp debian/mariadb-server-5.5.mysql-server.logrotate $$d/_etc_logrotate.d_mysql-server; \
cp debian/additions/debian-start $$d/_etc_mysql_debian-start;
dh_movefiles
# Build architecture-independent files here.
binary-indep: build install
@echo "RULES.binary-indep"
dh_testdir -i
dh_testroot -i
dh_installdebconf -i
dh_installdocs -i
dh_installexamples -i
dh_installmenu -i
dh_installlogrotate -i
dh_installinit -i
dh_installcron -i
dh_installman -i
dh_installinfo -i
dh_installlogcheck -i
dh_installchangelogs -i
dh_link -i
dh_compress -i
dh_fixperms -i
dh_installdeb -i
dh_perl -i
dh_gencontrol -i
dh_md5sums -i
dh_builddeb -i
# Build architecture-dependent files here.
binary-arch: build install
@echo "RULES.binary-arch"
dh_testdir
dh_testroot
dh_installdebconf -a
dh_installdocs -a
dh_installexamples -a
dh_installmenu -a
dh_installlogrotate -a --name mysql-server
# Start mysql in runlevel 19 before 20 where apache, proftpd etc gets
# started which might depend on a running database server.
dh_installinit -a --name=mysql -- defaults 19 21
dh_installcron -a --name mysql-server
dh_installman -a
dh_installinfo -a
dh_installlogcheck -a
dh_installchangelogs -a
dh_strip -a
dh_link -a # .so muss nach .so.1.2.3 installier werden!
dh_compress -a
dh_fixperms -a
dh_makeshlibs -a
dh_makeshlibs -plibmariadbclient18 -V'libmariadbclient18 (>= 5.5.1-1)'
dh_installdeb -a
dh_perl -a
dh_shlibdeps -a -l debian/libmariadbclient18/usr/lib -L libmariadbclient18
dh_gencontrol -a
dh_md5sums -a
dh_builddeb -a
source diff:
@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
binary: binary-indep binary-arch
get-orig-source:
@wget -nv -T10 -t3 \
-O /tmp/mysql-$(DEB_UPSTREAM_VERSION).tar.gz \
http://ftp.gwdg.de/pub/misc/mysql/Downloads/MySQL-$(DEB_UPSTREAM_VERSION_MAJOR_MINOR)/mysql-$(DEB_UPSTREAM_VERSION).tar.gz
@tar xfz /tmp/mysql-$(DEB_UPSTREAM_VERSION).tar.gz -C /tmp
@rm -rf /tmp/mysql-$(DEB_UPSTREAM_VERSION)/Docs
@rm -rf /tmp/mysql-$(DEB_UPSTREAM_VERSION)/debian
@mv /tmp/mysql-$(DEB_UPSTREAM_VERSION) /tmp/$(DEB_SOURCE_PACKAGE)-$(DEB_UPSTREAM_VERSION).orig
@cd /tmp ; tar czf $(DEB_SOURCE_PACKAGE)_$(DEB_UPSTREAM_VERSION).orig.tar.gz $(DEB_SOURCE_PACKAGE)-$(DEB_UPSTREAM_VERSION).orig
@rm -f /tmp/mysql-$(DEB_UPSTREAM_VERSION).tar.gz
@rm -rf /tmp/$(DEB_SOURCE_PACKAGE)-$(DEB_UPSTREAM_VERSION).orig
.PHONY: clean clean-patched configure build binary binary-indep binary-arch install patch unpatch
# vim: ts=8

15
debian/dist/Ubuntu/apparmor-profile vendored Normal file
View file

@ -0,0 +1,15 @@
# This file is intensionally empty to disable apparmor by default for newer
# versions of MariaDB, while providing seamless upgrade from older versions
# and from mysql, where apparmor is used.
#
# By default, we do not want to have any apparmor profile for the MariaDB
# server. It does not provide much useful functionality/security, and causes
# several problems for users who often are not even aware that apparmor
# exists and runs on their system.
#
# Users can modify and maintain their own profile, and in this case it will
# be used.
#
# When upgrading from previous version, users who modified the profile
# will be promptet to keep or discard it, while for default installs
# we will automatically disable the profile.

221
debian/dist/Ubuntu/control vendored Normal file
View file

@ -0,0 +1,221 @@
Source: mariadb-5.5
Section: misc
Priority: optional
Maintainer: MariaDB Developers <maria-developers@lists.launchpad.net>
XSBC-Original-Maintainer: Maria Developers <maria-developers@lists.launchpad.net>
Uploaders: MariaDB Developers <maria-developers@lists.launchpad.net>
Build-Depends: libtool (>= 1.4.2-7), procps | hurd, debhelper, file (>= 3.28), libncurses5-dev (>= 5.0-6), perl (>= 5.6.0), libwrap0-dev (>= 7.6-8.3), zlib1g-dev (>= 1:1.1.3-5), ${LIBREADLINE_DEV}, libevent-dev, libssl-dev, libpam0g-dev, psmisc, po-debconf, chrpath, automake1.9, doxygen, texlive-latex-base, ghostscript | gs-gpl, dpatch, gawk, bison, lsb-release, hardening-wrapper
Standards-Version: 3.8.2
Homepage: http://mariadb.org/
Vcs-Browser: http://bazaar.launchpad.net/~maria-captains/maria/5.5/files
Vcs-Bzr: bzr://lp:maria
Package: libmariadbclient18
Section: libs
Architecture: any
Depends: mariadb-common, libmysqlclient18 (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}
Description: MariaDB database client library
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes the client library.
Package: libmysqlclient18
Section: libs
Architecture: any
Depends: libmariadbclient18 (= ${source:Version})
Replaces: libmysqlclient18 (<< ${source:Version})
Description: Virtual package to satisfy external depends
This is an empty package that provides an updated "best" version of
libmysqlclient18 that does not conflict with the libmariadbclient18
package.
.
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
Package: libmariadbd-dev
Architecture: any
Section: libdevel
Depends: libmariadbclient-dev (>= ${source:Version}), ${misc:Depends}
Provides: libmysqld-dev
Conflicts: libmysqld-dev
Replaces: libmysqld-dev
Description: MariaDB embedded database development files
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes the embedded server library and header files.
Package: libmariadbclient-dev
Architecture: any
Section: libdevel
Depends: libmariadbclient18 (>= ${source:Version}), zlib1g-dev, , ${shlibs:Depends}, ${misc:Depends}
Replaces: libmariadbclient16-dev, libmysqlclient16-dev
Conflicts: libmysqlclient-dev, libmariadbclient16-dev, libmysqlclient14-dev, libmysqlclient12-dev, libmysqlclient10-dev, libmysqlclient15-dev, libmysqlclient16-dev
Provides: libmysqlclient-dev
Description: MariaDB database development files
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes development libraries and header files.
Package: mysql-common
Section: database
Architecture: all
Depends: ${shlibs:Depends}, ${misc:Depends}
Provides: mariadb-common
Description: MariaDB database common files (e.g. /etc/mysql/my.cnf)
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes files needed by all versions of the client library
(e.g. /etc/mysql/my.cnf).
.
Due to libmysqlclient15off package depends, this package has not yet been
renamed to mariadb-common. It does, however, already contain a new my.cnf
file with mariadb-specific configuration options.
Package: mariadb-client-core-5.5
Architecture: any
Depends: mariadb-common, libmariadbclient18 (>= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}
Provides: mysql-client-core, mysql-client-core-5.1, mysql-client-core-5.5
Conflicts: mysql-client (<< 5.0.51), mysql-client-5.0, mysql-client-5.1, mysql-client-5.5,
mysql-client-core-5.1, mysql-client-core-5.5,
mariadb-client-5.1, mariadb-client-core-5.1,
mariadb-client-5.2, mariadb-client-core-5.2,
mariadb-client-5.3, mariadb-client-core-5.3
Replaces: mysql-client (<< 5.0.51), mysql-client-5.0, mysql-client-5.1, mysql-client-5.5,
mysql-client-core-5.1, mysql-client-core-5.5,
mariadb-client-5.1, mariadb-client-core-5.1,
mariadb-client-5.2, mariadb-client-core-5.2,
mariadb-client-5.3, mariadb-client-core-5.3
Description: MariaDB database core client binaries
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes the core client files, as used by Akonadi.
Package: mariadb-client-5.5
Architecture: any
Depends: debianutils (>=1.6), libdbi-perl, libdbd-mysql-perl (>= 1.2202), mariadb-common, libmariadbclient18 (>= ${source:Version}), mariadb-client-core-5.5 (>= ${source:Version}), ${perl:Depends}, ${shlibs:Depends}, ${misc:Depends}
Provides: virtual-mysql-client, mysql-client,
mysql-client-4.1, mysql-client-5.1, mysql-client-5.5
Conflicts: mysql-client (<< 5.0.51), mysql-client-5.0, mysql-client-5.1,
mariadb-client (<< ${source:Version}),
mariadb-client-5.1, mariadb-client-5.2, mariadb-client-5.3
Replaces: mysql-client (<< 5.0.51), mysql-client-5.0, mysql-client-5.1,
mariadb-client (<< ${source:Version}),
mariadb-client-5.1, mariadb-client-5.2, mariadb-client-5.3
Description: MariaDB database client binaries
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes the client binaries and the additional tools
innotop and mysqlreport.
Package: mariadb-server-core-5.5
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, libmariadbclient18 (>= ${binary:Version})
Provides: mysql-server-core, mysql-server-core-5.1, mysql-server-core-5.5
Conflicts: mysql-server-5.0,
mysql-server-core-5.0, mysql-server-core-5.1, mysql-server-core-5.5,
mariadb-server-core-5.1, mariadb-server-core-5.2, mariadb-server-core-5.5
Replaces: mysql-server-5.0,
mysql-server-core-5.0, mysql-server-core-5.1, mysql-server-core-5.5,
mariadb-server-core-5.1, mariadb-server-core-5.2, mariadb-server-core-5.5
Description: MariaDB database core server files
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes the core server files, as used by Akonadi.
Package: mariadb-test-5.5
Section: database
Architecture: all
Depends: mariadb-server-5.5 (= ${source:Version}), mariadb-client-5.5 (= ${source:Version})
Conflicts: mariadb-test (<< ${source:Version}),
mariadb-test-5.1, mariadb-test-5.2, mariadb-test-5.3
Replaces: mariadb-test (<< ${source:Version}),
mariadb-test-5.1, mariadb-test-5.2, mariadb-test-5.3
Description: MariaDB database regression test suite
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes the regression test suite.
Package: mariadb-server-5.5
Architecture: any
Suggests: tinyca, mailx, mariadb-test
Recommends: libhtml-template-perl
Pre-Depends: mariadb-common, adduser (>= 3.40), debconf
Depends: mariadb-client-5.5 (>= ${source:Version}), libdbi-perl, perl (>= 5.6), ${shlibs:Depends}, ${misc:Depends}, psmisc, passwd, lsb-base (>= 3.0-10), mariadb-server-core-5.5 (>= ${binary:Version})
Provides: mariadb-server, mysql-server, virtual-mysql-server
Conflicts: mariadb-server (<< ${source:Version}), mysql-server (<< ${source:Version}),
mysql-server-4.1, mysql-server-5.0, mysql-server-5.1,
mariadb-server-5.1, mariadb-server-5.2, mariadb-server-5.3,
libmariadbclient16 (<< 5.3.4)
Replaces: mariadb-server (<< ${source:Version}), mysql-server (<< ${source:Version}),
mysql-server-4.1, mysql-server-5.0, mysql-server-5.1,
mariadb-server-5.1, mariadb-server-5.2, mariadb-server-5.3,
libmariadbclient16 (<< 5.3.4),
libmariadbclient-dev (<< 5.5.0)
Description: MariaDB database server binaries
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
.
This package includes the server binaries.
Package: mariadb-server
Section: database
Architecture: all
Depends: mariadb-server-5.5, ${misc:Depends}
Description: MariaDB database server (metapackage depending on the latest version)
This is an empty package that depends on the current "best" version of
mariadb-server (currently mariadb-server-5.5), as determined by the MariaDB
maintainers. Install this package if in doubt about which MariaDB
version you need. That will install the version recommended by the
package maintainers.
.
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
server. SQL (Structured Query Language) is the most popular database query
language in the world. The main goals of MariaDB are speed, robustness and
ease of use.
Package: mariadb-client
Section: database
Architecture: all
Depends: mariadb-client-5.5, ${misc:Depends}
Description: MariaDB database client (metapackage depending on the latest version)
This is an empty package that depends on the current "best" version of
mariadb-client (currently mariadb-client-5.5), as determined by the MariaDB
maintainers. Install this package if in doubt about which MariaDB version
you want, as this is the one we consider to be in the best shape.
Package: mariadb-test
Section: database
Architecture: all
Depends: mariadb-test-5.5
Description: MariaDB database regression test suite (metapackage depending on the latest version)
This is an empty package that depends on the current "best" version of
mariadb-test (currently mariadb-test-5.5), as determined by the MariaDB
maintainers.

View file

@ -0,0 +1,109 @@
* MYSQL WON'T START OR STOP?:
=============================
You may never ever delete the special mysql user "debian-sys-maint". This
user together with the credentials in /etc/mysql/debian.cnf are used by the
init scripts to stop the server as they would require knowledge of the mysql
root users password else.
So in most of the times you can fix the situation by making sure that the
debian.cnf file contains the right password, e.g. by setting a new one
(remember to do a "flush privileges" then).
* WHAT TO DO AFTER UPGRADES:
============================
The privilege tables are automatically updated so all there is left is read
the changelogs on dev.mysql.com to see if any changes affect custom apps.
* WHAT TO DO AFTER INSTALLATION:
================================
The MySQL manual describes certain steps to do at this stage in a separate
chapter. They are not necessary as the Debian packages does them
automatically.
The only thing that is left over for the admin is
- setting the passwords
- creating new users and databases
- read the rest of this text
* DOWNGRADING TO 4.0 or 4.1:
============================
Unsupported. Period.
But if you do and get problems or make interesting experiences, mail me, it
might help others.
Ok, if you really want, I would recommend to "mysqldump --opt" all tables,
then purge 4.1, delete /var/lib/mysql, install 4.0 and insert the dumps. Be
carefully, though, with the "mysql" table, you might not simply overwrite that
one as the password for the mysql "debian-sys-maint" user is stored in
/etc/mysql/debian.cnf and needed by /etc/init.d/ to start mysql and check if
it's alive.
* SOME APPLICATION CAN NO LONGER CONNECT:
=========================================
This application is probably linked against libmysqlclient12 or below and
somebody has created a mysql user with new-style passwords.
The old_passwords=1 option in /etc/mysql/my.cnf might help. If not the
application that inserted the user has to be changed or the application that
tries to connect updated to libmysqlclient14 or -15.
* NETWORKING:
=============
For security reasons, the Debian package has enabled networking only on the
loop-back device using "bind-address" in /etc/mysql/my.cnf. Check with
"netstat -tlnp" where it is listening. If your connection is aborted
immediately see if "mysqld: all" or similar is in /etc/hosts.allow and read
hosts_access(5).
* WHERE IS THE DOCUMENTATION?:
==============================
Unfortunately due to licensing restrictions, debian currently not able
to provide the mysql-doc package in any format. For the most up to date
documentation, please go to http://dev.mysql.com/doc.
* PASSWORDS:
============
It is strongly recommended to set a password for the mysql root user (which
/usr/bin/mysql -u root -D mysql -e "update user set password=password('new-password') where user='root'"
/usr/bin/mysql -u root -e "flush privileges"
If you already had a password set add "-p" before "-u" to the lines above.
If you are tired to type the password in every time or want to automate your
scripts you can store it in the file $HOME/.my.cnf. It should be chmod 0600
(-rw------- username username .my.cnf) to ensure that nobody else can read
it. Every other configuration parameter can be stored there, too. You will
find an example below and more information in the MySQL manual in
/usr/share/doc/mysql-doc or www.mysql.com.
ATTENTION: It is necessary, that a .my.cnf from root always contains a "user"
line wherever there is a "password" line, else, the Debian maintenance
scripts, that use /etc/mysql/debian.cnf, will use the username
"debian-sys-maint" but the password that is in root's .my.cnf. Also note,
that every change you make in the /root/.my.cnf will affect the mysql cron
script, too.
# an example of $HOME/.my.cnf
[client]
user = your-mysql-username
password = enter-your-good-new-password-here
* BIG_ROWS FOR EVEN MORE ROWS IN A TABLE:
=========================================
If you ever run out of rows in a table there is the possibility of building
the package with "-DBIG_ROWS" which, according to a MySQL employee on
packagers@lists.mysql.com should lead to a 64bit row index (I guess > 2^32
rows) but also to an approx. 5% performance loss.
* BerkeleyDB Storage Engine
===========================
Support for BerkeleyDB has been removed in 5.1, and consequently both the
have-bdb and skip-bdb configuration options will cause the server to fail.
Removing the options from /etc/mysql/my.cnf will fix this problem.
* FURTHER NOTES ON REPLICATION
===============================
If the MySQL server is acting as a replication slave, you should not
set --tmpdir to point to a directory on a memory-based filesystem or to
a directory that is cleared when the server host restarts. A replication
slave needs some of its temporary files to survive a machine restart so
that it can replicate temporary tables or LOAD DATA INFILE operations. If
files in the temporary file directory are lost when the server restarts,
replication fails.

View file

@ -0,0 +1,10 @@
etc/init.d
etc/logrotate.d
etc/mysql/conf.d
usr/bin
usr/sbin
usr/share/man/man8
usr/share/mysql
usr/share/doc/mariadb-server-5.3
var/run/mysqld
var/lib/mysql-upgrade

View file

@ -0,0 +1,63 @@
usr/lib/mysql/plugin/
usr/lib/libhsclient.so.*
etc/apparmor.d/usr.sbin.mysqld
usr/share/apport/package-hooks/source_mariadb-5.5.py
etc/mysql/debian-start
etc/mysql/conf.d/mysqld_safe_syslog.cnf
usr/bin/msql2mysql
usr/bin/my_print_defaults
usr/bin/myisamchk
usr/bin/myisam_ftdump
usr/bin/myisamlog
usr/bin/myisampack
usr/bin/aria_pack
usr/bin/aria_read_log
usr/bin/aria_ftdump
usr/bin/aria_chk
usr/bin/aria_dump_log
usr/bin/mysql_convert_table_format
usr/bin/mysql_install_db
usr/bin/mysql_secure_installation
usr/bin/mysql_setpermission
usr/bin/mysql_tzinfo_to_sql
usr/bin/mysql_upgrade
usr/bin/mysql_zap
usr/bin/mysqlbinlog
usr/bin/mysqld_multi
usr/bin/mysqld_safe
usr/bin/mysqlhotcopy
usr/bin/perror
usr/bin/replace
usr/bin/resolve_stack_dump
usr/bin/resolveip
usr/share/doc/mariadb-server-5.5/mysqld.sym.gz
usr/share/lintian/overrides/mariadb-server-5.5
usr/share/man/man1/msql2mysql.1
usr/share/man/man1/myisamchk.1
usr/share/man/man1/myisam_ftdump.1
usr/share/man/man1/myisamlog.1
usr/share/man/man1/myisampack.1
usr/share/man/man1/my_print_defaults.1
usr/share/man/man1/mysqlbinlog.1
usr/share/man/man1/mysql_convert_table_format.1
usr/share/man/man1/mysqld_multi.1
usr/share/man/man1/mysqld_safe.1
usr/share/man/man1/mysqlhotcopy.1
usr/share/man/man1/mysql_install_db.1
usr/share/man/man1/mysql_secure_installation.1
usr/share/man/man1/mysql_setpermission.1
usr/share/man/man1/mysql_upgrade.1
usr/share/man/man1/mysql_zap.1
usr/share/man/man1/perror.1
usr/share/man/man1/replace.1
usr/share/man/man1/resolveip.1
usr/share/man/man1/resolve_stack_dump.1
usr/share/man/man1/innochecksum.1
usr/share/man/man1/mysql_tzinfo_to_sql.1
usr/share/mysql/debian-start.inc.sh
usr/share/mysql/echo_stderr
usr/share/mysql/errmsg.txt
usr/share/mysql/fill_help_tables.sql
usr/share/mysql/mysql_system_tables_data.sql
usr/share/mysql/mysql_system_tables.sql
usr/share/mysql/mysql_test_data_timezone.sql

View file

@ -0,0 +1,284 @@
#!/bin/bash -e
. /usr/share/debconf/confmodule
if [ -n "$DEBIAN_SCRIPT_DEBUG" ]; then set -v -x; DEBIAN_SCRIPT_TRACE=1; fi
${DEBIAN_SCRIPT_TRACE:+ echo "#42#DEBUG# RUNNING $0 $*" 1>&2 }
export PATH=$PATH:/sbin:/usr/sbin:/bin:/usr/bin
# This command can be used as pipe to syslog. With "-s" it also logs to stderr.
ERR_LOGGER="logger -p daemon.err -t mysqld_safe -i"
# This will make an error in a logged command immediately apparent by aborting
# the install, rather than failing silently and leaving a broken install.
set -o pipefail
invoke() {
if [ -x /usr/sbin/invoke-rc.d ]; then
invoke-rc.d mysql $1
else
/etc/init.d/mysql $1
fi
}
MYSQL_BOOTSTRAP="/usr/sbin/mysqld --bootstrap --user=mysql --skip-grant-tables --innodb=OFF --pbxt=OFF --default-storage-engine=myisam"
test_mysql_access() {
mysql --no-defaults -u root -h localhost </dev/null >/dev/null 2>&1
}
# call with $1 = "online" to connect to the server, otherwise it bootstraps
set_mysql_rootpw() {
# forget we ever saw the password. don't use reset to keep the seen status
db_set mysql-server/root_password ""
db_set mysql-server/root_password_again ""
tfile=`mktemp`
if [ ! -f "$tfile" ]; then
return 1
fi
# this avoids us having to call "test" or "[" on $rootpw
cat << EOF > $tfile
USE mysql;
UPDATE user SET password=PASSWORD("$rootpw") WHERE user='root';
FLUSH PRIVILEGES;
EOF
if grep -q 'PASSWORD("")' $tfile; then
retval=0
elif [ "$1" = "online" ]; then
mysql --no-defaults -u root -h localhost <$tfile >/dev/null
retval=$?
else
$MYSQL_BOOTSTRAP <$tfile
retval=$?
fi
rm -f $tfile
return $retval
}
# This is necessary because mysql_install_db removes the pid file in /var/run
# and because changed configuration options should take effect immediately.
# In case the server wasn't running at all it should be ok if the stop
# script fails. I can't tell at this point because of the cleaned /var/run.
set +e; invoke stop; set -e
case "$1" in
configure)
mysql_datadir=/usr/share/mysql
mysql_statedir=/var/lib/mysql
mysql_rundir=/var/run/mysqld
mysql_logdir=/var/log
mysql_cfgdir=/etc/mysql
mysql_newlogdir=/var/log/mysql
mysql_upgradedir=/var/lib/mysql-upgrade
# first things first, if the following symlink exists, it is a preserved
# copy the old data dir from a mysql upgrade that would have otherwise
# been replaced by an empty mysql dir. this should restore it.
for dir in DATADIR LOGDIR; do
if [ "$dir" = "DATADIR" ]; then targetdir=$mysql_statedir; else targetdir=$mysql_newlogdir; fi
savelink="$mysql_upgradedir/$dir.link"
if [ -L "$savelink" ]; then
# If the targetdir was a symlink before we upgraded it is supposed
# to be either still be present or not existing anymore now.
if [ -L "$targetdir" ]; then
rm "$savelink"
elif [ ! -d "$targetdir" ]; then
mv "$savelink" "$targetdir"
else
# this should never even happen, but just in case...
mysql_tmp=`mktemp -d -t mysql-symlink-restore-XXXXXX`
echo "this is very strange! see $mysql_tmp/README..." >&2
mv "$targetdir" "$mysql_tmp"
cat << EOF > "$mysql_tmp/README"
if you're reading this, it's most likely because you had replaced /var/lib/mysql
with a symlink, then upgraded to a new version of mysql, and then dpkg
removed your symlink (see #182747 and others). the mysql packages noticed
that this happened, and as a workaround have restored it. however, because
/var/lib/mysql seems to have been re-created in the meantime, and because
we don't want to rm -rf something we don't know as much about, we're going
to leave this unexpected directory here. if your database looks normal,
and this is not a symlink to your database, you should be able to blow
this all away.
EOF
fi
fi
rmdir $mysql_upgradedir 2>/dev/null || true
done
# Ensure the existence and right permissions for the database and
# log files.
if [ ! -d "$mysql_statedir" -a ! -L "$mysql_statedir" ]; then mkdir "$mysql_statedir"; fi
if [ ! -d "$mysql_statedir/mysql" -a ! -L "$mysql_statedir/mysql" ]; then mkdir "$mysql_statedir/mysql"; fi
if [ ! -d "$mysql_newlogdir" -a ! -L "$mysql_newlogdir" ]; then mkdir "$mysql_newlogdir"; fi
# When creating an ext3 jounal on an already mounted filesystem like e.g.
# /var/lib/mysql, you get a .journal file that is not modifyable by chown.
# The mysql_datadir must not be writable by the mysql user under any
# circumstances as it contains scripts that are executed by root.
set +e
chown -R 0:0 $mysql_datadir
chown -R mysql $mysql_statedir
chown -R mysql $mysql_rundir
chown -R mysql:adm $mysql_newlogdir; chmod 2750 $mysql_newlogdir;
for i in log err; do
touch $mysql_logdir/mysql.$i
chown mysql:adm $mysql_logdir/mysql.$i
chmod 0640 $mysql_logdir/mysql.$i
done
set -e
# This is important to avoid dataloss when there is a removed
# mysql-server version from Woody lying around which used the same
# data directory and then somewhen gets purged by the admin.
db_set mysql-server/postrm_remove_database false || true
# To avoid downgrades.
touch $mysql_statedir/debian-5.5.flag
# initiate databases. Output is not allowed by debconf :-(
# This will fail if we are upgrading an existing database; in this case
# mysql_upgrade, called from the /etc/init.d/mysql start script, will
# handle things.
# Debian: beware of the bashisms...
# Debian: can safely run on upgrades with existing databases
set +e
/bin/bash /usr/bin/mysql_install_db --rpm --user=mysql 2>&1 | $ERR_LOGGER
set -e
## On every reconfiguration the maintenance user is recreated.
#
# - It is easier to regenerate the password every time but as people
# use fancy rsync scripts and file alteration monitors, the existing
# password is used and existing files not touched.
# - The mysqld statement is like that in mysql_install_db because the
# server is not already running. This has some implications:
# - The amount of newlines and semicolons in the query is important!
# - GRANT is not possible with --skip-grant-tables and "INSERT
# (user,host..) VALUES" is not --ansi compliant
# - The echo is just for readability. ash's buildin has no "-e" so use /bin/echo.
# - The Super_priv, Show_db_priv, Create_tmp_table_priv and Lock_tables_priv
# may not be present as old Woody 3.23 databases did not have it and the
# admin might not already have run mysql_upgrade which adds them.
# As the binlog cron scripts to need at least the Super_priv, I do first
# the old query which always succeeds and then the new which may or may not.
# recreate the credentials file if not present or without mysql_upgrade stanza
dc=$mysql_cfgdir/debian.cnf;
if [ -e "$dc" -a -n "`fgrep mysql_upgrade $dc 2>/dev/null`" ]; then
pass="`sed -n 's/^[ ]*password *= *// p' $dc | head -n 1`"
else
pass=`perl -e 'print map{("a".."z","A".."Z",0..9)[int(rand(62))]}(1..16)'`;
if [ ! -d "$mysql_cfgdir" ]; then install -o 0 -g 0 -m 0755 -d $mysql_cfgdir; fi
cat /dev/null > $dc
echo "# Automatically generated for Debian scripts. DO NOT TOUCH!" >>$dc
echo "[client]" >>$dc
echo "host = localhost" >>$dc
echo "user = debian-sys-maint" >>$dc
echo "password = $pass" >>$dc
echo "socket = $mysql_rundir/mysqld.sock" >>$dc
echo "[mysql_upgrade]" >>$dc
echo "host = localhost" >>$dc
echo "user = debian-sys-maint" >>$dc
echo "password = $pass" >>$dc
echo "socket = $mysql_rundir/mysqld.sock" >>$dc
echo "basedir = /usr" >>$dc
fi
# If this dir chmod go+w then the admin did it. But this file should not.
chown 0:0 $dc
chmod 0600 $dc
# update privilege tables
password_column_fix_query=`/bin/echo -e \
"USE mysql\n" \
"ALTER TABLE user CHANGE Password Password char(41) character set latin1 collate latin1_bin DEFAULT '' NOT NULL"`;
replace_query=`/bin/echo -e \
"USE mysql\n" \
"SET sql_mode='';\n" \
"REPLACE INTO user SET " \
" host='localhost', user='debian-sys-maint', password=password('$pass'), " \
" Select_priv='Y', Insert_priv='Y', Update_priv='Y', Delete_priv='Y', " \
" Create_priv='Y', Drop_priv='Y', Reload_priv='Y', Shutdown_priv='Y', " \
" Process_priv='Y', File_priv='Y', Grant_priv='Y', References_priv='Y', " \
" Index_priv='Y', Alter_priv='Y', Super_priv='Y', Show_db_priv='Y', "\
" Create_tmp_table_priv='Y', Lock_tables_priv='Y', Execute_priv='Y', "\
" Repl_slave_priv='Y', Repl_client_priv='Y', Create_view_priv='Y', "\
" Show_view_priv='Y', Create_routine_priv='Y', Alter_routine_priv='Y', "\
" Create_user_priv='Y', Event_priv='Y', Trigger_priv='Y',"\
" ssl_cipher='', x509_issuer='', x509_subject='';"`;
# Engines supported by etch should be installed per default. The query sequence is supposed
# to be aborted if the CREATE TABLE fails due to an already existent table in which case the
# admin might already have chosen to remove one or more plugins. Newlines are necessary.
install_plugins=`/bin/echo -e \
"USE mysql;\n" \
"CREATE TABLE plugin (name char(64) COLLATE utf8_bin NOT NULL DEFAULT '', " \
" dl char(128) COLLATE utf8_bin NOT NULL DEFAULT '', " \
" PRIMARY KEY (name)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='MySQL plugins';" `
# Upgrade password column format before the root password gets set.
echo "$password_column_fix_query" | $MYSQL_BOOTSTRAP 2>&1 | $ERR_LOGGER
db_get mysql-server/root_password && rootpw="$RET"
if ! set_mysql_rootpw; then
password_error="yes"
fi
set +e
echo "$replace_query" | $MYSQL_BOOTSTRAP 2>&1 | $ERR_LOGGER
echo "$install_plugins" | $MYSQL_BOOTSTRAP 2>&1 | $ERR_LOGGER
set -e
# If there is a real AppArmor profile, we reload it.
# If the default empty profile is installed, then we remove any old
# profile that may be loaded.
# This allows upgrade from old versions (that have an apparmor profile
# on by default) to work both to disable a default profile, and to keep
# any profile installed and maintained by users themselves.
profile="/etc/apparmor.d/usr.sbin.mysqld"
if [ -f "$profile" ] && aa-status --enabled 2>/dev/null; then
if grep -q /usr/sbin/mysqld "$profile" 2>/dev/null ; then
apparmor_parser -r "$profile" || true
else
echo "/usr/sbin/mysqld { }" | apparmor_parser --remove 2>/dev/null || true
fi
fi
;;
abort-upgrade|abort-remove|abort-configure)
;;
*)
echo "postinst called with unknown argument '$1'" 1>&2
exit 1
;;
esac
# here we check to see if we can connect as root without a password
# this should catch upgrades from previous versions where the root
# password wasn't set. if there is a password, or if the connection
# fails for any other reason, nothing happens.
if [ "$1" = "configure" ]; then
if test_mysql_access; then
db_input medium mysql-server/root_password || true
db_go
db_get mysql-server/root_password && rootpw="$RET"
if ! set_mysql_rootpw "online"; then
password_error="yes"
fi
fi
if [ "$password_error" = "yes" ]; then
db_input high mysql-server/error_setting_password || true
db_go
fi
fi
db_stop # in case invoke failes
#DEBHELPER#
exit 0

View file

@ -0,0 +1,86 @@
#!/bin/bash -e
# It is possible that Debconf has already been removed, too.
if [ -f /usr/share/debconf/confmodule ]; then
. /usr/share/debconf/confmodule
fi
if [ -n "$DEBIAN_SCRIPT_DEBUG" ]; then set -v -x; DEBIAN_SCRIPT_TRACE=1; fi
${DEBIAN_SCRIPT_TRACE:+ echo "#42#DEBUG# RUNNING $0 $*" 1>&2 }
MYADMIN="/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf"
# Try to stop the server in a sane way. If it does not success let the admin
# do it himself. No database directories should be removed while the server
# is running!
stop_server() {
set +e
if [ -x /usr/sbin/invoke-rc.d ]; then
invoke-rc.d mysql stop
else
/etc/init.d/mysql stop
fi
errno=$?
set -e
if [ "$?" != 0 ]; then
echo "Trying to stop the MySQL server resulted in exitcode $?." 1>&2
echo "Stop it yourself and try again!" 1>&2
exit 1
fi
}
case "$1" in
purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
if [ -n "`$MYADMIN ping 2>/dev/null`" ]; then
stop_server
sleep 2
fi
;;
*)
echo "postrm called with unknown argument '$1'" 1>&2
exit 1
;;
esac
#
# - Do NOT purge logs or data if another mysql-sever* package is installed (#307473)
# - Remove the mysql user only after all his owned files are purged.
#
if [ "$1" = "purge" -a ! \( -x /usr/sbin/mysqld -o -L /usr/sbin/mysqld \) ]; then
# we remove the mysql user only after all his owned files are purged
rm -f /var/log/mysql.{log,err}{,.0,.[1234567].gz}
rm -rf /var/log/mysql
db_input high mysql-server-5.1/postrm_remove_databases || true
db_go || true
db_get mysql-server-5.1/postrm_remove_databases || true
if [ "$RET" = "true" ]; then
# never remove the debian.cnf when the databases are still existing
# else we ran into big trouble on the next install!
rm -f /etc/mysql/debian.cnf
rm -rf /var/lib/mysql
rm -rf /var/run/mysqld
userdel mysql || true
fi
# (normally) Automatically added by dh_installinit
if [ "$1" = "purge" ] ; then
update-rc.d mysql remove >/dev/null || exit 0
fi
# (normally) End automatically added section
fi
# (normally) Automatically added by dh_installdebconf
if [ "$1" = purge ] && [ -e /usr/share/debconf/confmodule ]; then
. /usr/share/debconf/confmodule
db_purge
fi
# (normally) End automatically added section
if [ "$1" = "purge" ] ; then
rm -f /etc/apparmor.d/force-complain/usr.sbin.mysqld >/dev/null 2>&1 || true
fi
# no DEBHELPER here, "update-rc.d remove" fails if mysql-server-5.1 is installed
exit 0

View file

@ -0,0 +1,52 @@
'''apport package hook for mariadb-5.3
(c) 2009 Canonical Ltd.
Author: Mathias Gug <mathias.gug@canonical.com>
'''
import os, os.path
from apport.hookutils import *
def _add_my_conf_files(report, filename):
key = 'MySQLConf' + path_to_key(filename)
report[key] = ""
for line in read_file(filename).split('\n'):
try:
if 'password' in line.split('=')[0]:
line = "%s = @@APPORTREPLACED@@" % (line.split('=')[0])
report[key] += line + '\n'
except IndexError:
continue
def add_info(report):
attach_conffiles(report, 'mariadb-server-5.3', conffiles=None)
key = 'Logs' + path_to_key('/var/log/daemon.log')
report[key] = ""
for line in read_file('/var/log/daemon.log').split('\n'):
try:
if 'mysqld' in line.split()[4]:
report[key] += line + '\n'
except IndexError:
continue
key = 'Logs' + path_to_key('/var/log/kern.log')
report[key] = ""
for line in read_file('/var/log/kern.log').split('\n'):
try:
if '/usr/sbin/mysqld' in string.join(line.split()[4:]):
report[key] += line + '\n'
except IndexError:
continue
_add_my_conf_files(report, '/etc/mysql/my.cnf')
for f in os.listdir('/etc/mysql/conf.d'):
_add_my_conf_files(report, os.path.join('/etc/mysql/conf.d', f))
try:
report['MySQLVarLibDirListing'] = unicode(os.listdir('/var/lib/mysql'))
except OSError:
report['MySQLVarLibDirListing'] = unicode(False)
if __name__ == '__main__':
report = {}
add_info(report)
for key in report:
print '%s: %s' % (key, report[key].split('\n', 1)[0])

299
debian/dist/Ubuntu/rules vendored Executable file
View file

@ -0,0 +1,299 @@
#!/usr/bin/make -f
export DH_VERBOSE=1
export DEB_BUILD_HARDENING=1
PACKAGE=mariadb-5.5
include /usr/share/dpatch/dpatch.make
TMP=$(CURDIR)/debian/tmp/
ARCH = $(shell dpkg-architecture -qDEB_BUILD_ARCH)
ARCH_OS = $(shell dpkg-architecture -qDEB_BUILD_ARCH_OS)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEBVERSION = $(shell dpkg-parsechangelog | awk '/^Version: / { print $$2 }' | sed 's/^.*-//' )
DEB_SOURCE_PACKAGE ?= $(strip $(shell egrep '^Source: ' debian/control | cut -f 2 -d ':'))
DEB_VERSION ?= $(shell dpkg-parsechangelog | egrep '^Version:' | cut -f 2 -d ' ')
DEB_NOEPOCH_VERSION ?= $(shell echo $(DEB_VERSION) | cut -d: -f2-)
DEB_UPSTREAM_VERSION ?= $(shell echo $(DEB_NOEPOCH_VERSION) | sed 's/-[^-]*$$//')
DEB_UPSTREAM_VERSION_MAJOR_MINOR := $(shell echo $(DEB_UPSTREAM_VERSION) | sed -r -n 's/^([0-9]+\.[0-9]+).*/\1/p')
DISTRIBUTION = $(shell lsb_release -i -s)
RELEASE = $(shell lsb_release -r -s)
MAKE_J = -j$(shell if [ -f /proc/cpuinfo ] ; then grep -c processor.* /proc/cpuinfo ; else echo 1 ; fi)
ifeq (${MAKE_J}, -j0)
MAKE_J = -j1
endif
MAKE_TEST_TARGET=test-force
ifneq ($(findstring fulltest,$(DEB_BUILD_OPTIONS)),)
# make test-bt is the testsuite run by the MySQL build team
# before a release, but it is long
MAKE_TEST_TARGET=test-bt
endif
USE_ASSEMBLER=--enable-assembler
ifneq (,$(filter $(ARCH), amd64 i386 ia64 s390))
TESTSUITE_FAIL_CMD=exit 1
else
TESTSUITE_FAIL_CMD=true
endif
BUILDDIR = builddir
builddir = $(BUILDDIR)
# This causes seg11 crashes if LDAP is used for groups in /etc/nsswitch.conf
# so it is disabled by default although, according to MySQL, it brings >10%
# performance gain if enabled. See #299382.
ifeq ($(STATIC_MYSQLD), 1)
USE_STATIC_MYSQLD=--with-mysqld-ldflags=-all-static
endif
configure: patch configure-stamp
configure-stamp:
@echo "RULES.$@"
dh_testdir
ifneq ($(ARCH_OS),hurd)
if [ ! -d /proc/self ]; then echo "/proc IS NEEDED" 1>&2; exit 1; fi
endif
( test -d $(builddir) || mkdir $(builddir) ) && cd $(builddir) && \
sh -c 'PATH=$${MYSQL_BUILD_PATH:-"/bin:/usr/bin"} \
CC=$${MYSQL_BUILD_CC:-gcc} \
CFLAGS=$${MYSQL_BUILD_CFLAGS:-"-O2 -fno-omit-frame-pointer -g -pipe -Wall -Wno-uninitialized"} \
CXX=$${MYSQL_BUILD_CXX:-g++} \
CXXFLAGS=$${MYSQL_BUILD_CXXFLAGS:-"-O2 -fno-omit-frame-pointer -g -pipe -Wall -Wno-uninitialized"} \
cmake .. \
-DCMAKE_INSTALL_PREFIX=/usr \
-DINSTALL_SBINDIR=sbin \
-DMYSQL_DATADIR=/var/lib/mysql \
-DINSTALL_INCLUDEDIR=include \
-DINSTALL_INFODIR=share/info \
-DINSTALL_MANDIR=share/man \
\
-DMYSQL_SERVER_SUFFIX="-$(DEBVERSION)" \
-DWITH_COMMENT="(MariaDB - http://mariadb.com/)" \
-DSYSTEM_TYPE="debian-linux-gnu" \
-DINSTALL_LAYOUT=DEB \
\
-DENABLED_LOCAL_INFILE=1 \
-DWITH_FAST_MUTEXES=1 \
\
-DMYSQL_UNIX_ADDR=/var/run/mysqld/mysqld.sock \
-DMYSQL_USER=mysql \
\
-DEXTRA_CHARSETS=all \
-DWITH_LIBWRAP=1 \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
-DWITH_EMBEDDED_SERVER=1 \
-DHAVE_EMBEDDED_PRIVILEGE_CONTROL=ON \
-DWITH_MAX=1'
touch $@
build: build-stamp
build-stamp: configure
@echo "RULES.$@"
dh_testdir
cd $(builddir) && $(MAKE) $(MAKE_J)
ifeq ($(findstring nocheck,$(DEB_BUILD_OPTIONS)),)
# Don't know why the following is necessary...
cp unittest/unit.pl $(builddir)/unittest/
cp -r mysql-test/* $(builddir)/mysql-test/
cp -r sql/share/* $(builddir)/sql/share/
cp -r scripts/*sql $(builddir)/scripts/
if [ ! -f testsuite-stamp ] ; then \
cd $(builddir) && $(MAKE) $(MAKE_TEST_TARGET) || $(TESTSUITE_FAIL_CMD) ; \
fi
endif
touch testsuite-stamp
touch build-stamp
clean: clean-patched unpatch
rm -rf debian/patched
clean-patched:
@echo "RULES.clean-patched"
dh_testdir
dh_testroot
rm -f configure-stamp*
rm -f build-stamp*
rm -f testsuite-stamp
#
[ ! -f Makefile ] || $(MAKE) clean
[ ! -d mysql-test/var ] || rm -rf mysql-test/var
#
rm -rf $(BUILDDIR)
debconf-updatepo
dh_clean -v
install: build
@echo "RULES.$@"
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
# some self written manpages which hopefully
# gets overwritten sooner or later with upstreams
mkdir -p $(TMP)/usr/share/man/man1/
mkdir -p $(TMP)/usr/share/man/man8/
cp debian/additions/*.1 $(TMP)/usr/share/man/man1/
mkdir -p $(TMP)/etc/mysql/conf.d/
cp debian/additions/mysqld_safe_syslog.cnf $(TMP)/etc/mysql/conf.d/
# make install (trailing slash needed for innobase)
cd $(builddir) && $(MAKE) install DESTDIR=$(TMP)/
#
# After installing, remove rpath to make lintian happy.
set +e; \
find ./debian/tmp/ -type f -print0 \
| xargs -0 --no-run-if-empty chrpath -k 2>/dev/null \
| fgrep RPATH= \
| cut -d: -f 1 \
| xargs --no-run-if-empty chrpath -d; \
set -e
# libmysqlclient-dev: forgotten header file since 3.23.25?
cp $(BUILDDIR)/include/my_config.h $(TMP)/usr/include/mysql/
cp include/my_dir.h $(TMP)/usr/include/mysql/
# mysql-common: We now provide our own config file.
# can't be mariadb-common, other packages insist
install -d $(TMP)/etc/mysql
install -m 0644 debian/additions/my.cnf $(TMP)/etc/mysql/my.cnf
# mariadb-client
install -m 0755 debian/additions/mysqlreport $(TMP)/usr/bin/
install -m 0755 debian/additions/innotop/innotop $(TMP)/usr/bin/
install -m 0644 debian/additions/innotop/innotop.1 $(TMP)/usr/share/man/man1/
# mariadb-server
install -m 0755 $(BUILDDIR)/scripts/mysqld_safe $(TMP)/usr/bin/mysqld_safe
mkdir -p $(TMP)/usr/share/doc/mariadb-server-5.5/examples
# We have a sane my.cnf, cruft not needed (remove my-*.cnf and config-*.cnf)
# $(TMP)/usr/share/mysql/*cnf $(TMP)/usr/share/doc/mariadb-server-5.3/examples/
rm -vf $(TMP)/usr/share/mysql/my-*.cnf \
$(TMP)/usr/share/mysql/config-*.cnf \
$(TMP)/usr/share/mysql/mi_test_all* \
$(TMP)/usr/share/mysql/mysql-log-rotate \
$(TMP)/usr/share/mysql/mysql.server \
$(TMP)/usr/share/mysql/binary-configure
nm -n $(BUILDDIR)/sql/mysqld |gzip -9 > $(TMP)/usr/share/doc/mariadb-server-5.5/mysqld.sym.gz
install -m 0755 debian/additions/echo_stderr $(TMP)/usr/share/mysql/
install -m 0755 debian/additions/debian-start $(TMP)/etc/mysql/
install -m 0755 debian/additions/debian-start.inc.sh $(TMP)/usr/share/mysql/
# mariadb-test
mv $(TMP)/usr/mysql-test $(TMP)/usr/share/mysql
# lintian overrides
mkdir -p $(TMP)/usr/share/lintian/overrides/
cp debian/mysql-common.lintian-overrides $(TMP)/usr/share/lintian/overrides/mysql-common
cp debian/mariadb-server-5.5.lintian-overrides $(TMP)/usr/share/lintian/overrides/mariadb-server-5.5
cp debian/mariadb-client-5.5.lintian-overrides $(TMP)/usr/share/lintian/overrides/mariadb-client-5.5
# For 5.0 -> 5.5 transition
d=$(TMP)/usr/share/mysql-common/internal-use-only/; \
mkdir -p $$d; \
cp debian/mariadb-server-5.5.mysql.init $$d/_etc_init.d_mysql; \
cp debian/mariadb-server-5.5.mysql-server.logrotate $$d/_etc_logrotate.d_mysql-server; \
cp debian/additions/debian-start $$d/_etc_mysql_debian-start;
# install AppArmor profile
install -D -m 644 debian/apparmor-profile $(TMP)/etc/apparmor.d/usr.sbin.mysqld
# install Apport hook
install -D -m 644 debian/mariadb-server-5.5.py $(TMP)/usr/share/apport/package-hooks/source_mariadb-5.5.py
dh_movefiles
# Build architecture-independent files here.
binary-indep: build install
@echo "RULES.binary-indep"
dh_testdir -i
dh_testroot -i
dh_installdebconf -i
dh_installdocs -i
dh_installexamples -i
dh_installmenu -i
dh_installlogrotate -i
dh_installinit -i
dh_installcron -i
dh_installman -i
dh_installinfo -i
dh_installlogcheck -i
dh_installchangelogs -i
dh_link -i
dh_compress -i
dh_fixperms -i
dh_installdeb -i
dh_perl -i
dh_gencontrol -i
dh_md5sums -i
dh_builddeb -i
# Build architecture-dependent files here.
binary-arch: build install
@echo "RULES.binary-arch"
dh_testdir
dh_testroot
dh_installdebconf -a
dh_installdocs -a
dh_installexamples -a
dh_installmenu -a
dh_installlogrotate -a --name mysql-server
# Start mysql in runlevel 19 before 20 where apache, proftpd etc gets
# started which might depend on a running database server.
dh_installinit -a --name=mysql -- defaults 19 21
dh_installcron -a --name mysql-server
dh_installman -a
dh_installinfo -a
dh_installlogcheck -a
dh_installchangelogs -a
dh_strip -a
dh_link -a # .so muss nach .so.1.2.3 installier werden!
dh_compress -a
dh_fixperms -a
dh_makeshlibs -a
dh_makeshlibs -plibmariadbclient18 -V'libmariadbclient18 (>= 5.5.1-1)'
dh_installdeb -a
dh_perl -a
dh_shlibdeps -a -l debian/libmariadbclient18/usr/lib -L libmariadbclient18
dh_gencontrol -a
dh_md5sums -a
dh_builddeb -a
source diff:
@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
binary: binary-indep binary-arch
get-orig-source:
@wget -nv -T10 -t3 \
-O /tmp/mysql-$(DEB_UPSTREAM_VERSION).tar.gz \
http://ftp.gwdg.de/pub/misc/mysql/Downloads/MySQL-$(DEB_UPSTREAM_VERSION_MAJOR_MINOR)/mysql-$(DEB_UPSTREAM_VERSION).tar.gz
@tar xfz /tmp/mysql-$(DEB_UPSTREAM_VERSION).tar.gz -C /tmp
@rm -rf /tmp/mysql-$(DEB_UPSTREAM_VERSION)/Docs
@rm -rf /tmp/mysql-$(DEB_UPSTREAM_VERSION)/debian
@mv /tmp/mysql-$(DEB_UPSTREAM_VERSION) /tmp/$(DEB_SOURCE_PACKAGE)-$(DEB_UPSTREAM_VERSION).orig
@cd /tmp ; tar czf $(DEB_SOURCE_PACKAGE)_$(DEB_UPSTREAM_VERSION).orig.tar.gz $(DEB_SOURCE_PACKAGE)-$(DEB_UPSTREAM_VERSION).orig
@rm -f /tmp/mysql-$(DEB_UPSTREAM_VERSION).tar.gz
@rm -rf /tmp/$(DEB_SOURCE_PACKAGE)-$(DEB_UPSTREAM_VERSION).orig
.PHONY: clean clean-patched configure build binary binary-indep binary-arch install patch unpatch
# vim: ts=8

View file

@ -0,0 +1,4 @@
The examples directory includes files that might be needed by some
developers:
- header files not installed by default
- the example file udf_example.c

2
debian/libmariadbclient-dev.dirs vendored Normal file
View file

@ -0,0 +1,2 @@
usr/include/
usr/lib/

1
debian/libmariadbclient-dev.examples vendored Normal file
View file

@ -0,0 +1 @@
sql/udf_example.c

6
debian/libmariadbclient-dev.files vendored Normal file
View file

@ -0,0 +1,6 @@
usr/bin/mysql_config
usr/include/mysql/*.h
usr/lib/libmysqlclient.a
usr/lib/libmysqlclient_r.a
usr/share/aclocal/mysql.m4
usr/share/man/man1/mysql_config.1

2
debian/libmariadbclient-dev.links vendored Normal file
View file

@ -0,0 +1,2 @@
usr/lib/libmysqlclient.so.16 usr/lib/libmysqlclient.so
usr/lib/libmysqlclient_r.so.16 usr/lib/libmysqlclient_r.so

1
debian/libmariadbclient18.dirs vendored Normal file
View file

@ -0,0 +1 @@
usr/lib/

1
debian/libmariadbclient18.files vendored Normal file
View file

@ -0,0 +1 @@
usr/lib/libmysqlclient*.so.*

12
debian/libmariadbclient18.postinst vendored Normal file
View file

@ -0,0 +1,12 @@
#!/bin/bash -e
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0
# vim: ts=4

2
debian/libmariadbd-dev.files vendored Normal file
View file

@ -0,0 +1,2 @@
usr/lib/mysql/*.a
usr/lib/mysql/*.la

View file

@ -0,0 +1,4 @@
FAQ:
Q: My <tab> completition is gone, why?
A: You have "no-auto-rehash" in the "[mysql]" section of /etc/mysql/my.cnf!

3
debian/mariadb-client-5.5.dirs vendored Normal file
View file

@ -0,0 +1,3 @@
usr/bin/
usr/share/man/man1/
usr/share/perl5/

2
debian/mariadb-client-5.5.docs vendored Normal file
View file

@ -0,0 +1,2 @@
debian/additions/innotop/changelog.innotop
README

31
debian/mariadb-client-5.5.files vendored Normal file
View file

@ -0,0 +1,31 @@
usr/bin/innochecksum
usr/bin/innotop
usr/bin/mysqlaccess
usr/bin/mysqladmin
usr/bin/mysqlbug
usr/bin/mysqldump
usr/bin/mysqldumpslow
usr/bin/mysql_find_rows
usr/bin/mysql_fix_extensions
usr/bin/mysqlimport
usr/bin/mysqlreport
usr/bin/mysqlshow
usr/bin/mysqlslap
usr/bin/mysql_waitpid
usr/share/lintian/overrides/mariadb-client-5.5
usr/share/man/man1/innotop.1
usr/share/man/man1/mysqlaccess.1
usr/share/man/man1/mysqladmin.1
usr/share/man/man1/mysqlbug.1
usr/share/man/man1/mysqldump.1
usr/share/man/man1/mysqldumpslow.1
usr/share/man/man1/mysql_find_rows.1
usr/share/man/man1/mysql_fix_extensions.1
usr/share/man/man1/mysqlimport.1
usr/share/man/man1/mysqlman.1
usr/share/man/man1/mysqlreport.1
usr/share/man/man1/mysqlshow.1
usr/share/man/man1/mysqlslap.1
usr/share/man/man1/mysql_tableinfo.1
usr/share/man/man1/mysql_waitpid.1
usr/share/man/man8/mysqlmanager.8

3
debian/mariadb-client-5.5.links vendored Normal file
View file

@ -0,0 +1,3 @@
usr/bin/mysqlcheck usr/bin/mysqlrepair
usr/bin/mysqlcheck usr/bin/mysqlanalyze
usr/bin/mysqlcheck usr/bin/mysqloptimize

View file

@ -0,0 +1,3 @@
mariadb-client-5.3: package-has-a-duplicate-relation
mariadb-client-5.3: wrong-name-for-upstream-changelog usr/share/doc/mariadb-client-5.3/changelog.innotop.gz
mariadb-client-5.3: pkg-not-in-package-test innotop

3
debian/mariadb-client-5.5.menu vendored Normal file
View file

@ -0,0 +1,3 @@
# According to /usr/share/menu/ policy 1.4, not /usr/share/doc/debian-policy/
?package(innotop):needs="text" section="Applications/Data Management"\
title="innotop" command="/usr/bin/innotop"

4
debian/mariadb-client-core-5.5.files vendored Normal file
View file

@ -0,0 +1,4 @@
usr/bin/mysql
usr/bin/mysqlcheck
usr/share/man/man1/mysql.1
usr/share/man/man1/mysqlcheck.1

34
debian/mariadb-server-5.5.NEWS vendored Normal file
View file

@ -0,0 +1,34 @@
mysql-dfsg-5.1 (5.1.38-1) unstable; urgency=low
* Please read http://dev.mysql.com/doc/refman/5.1/en/upgrading-from-5-0.html
* Make sure to do a REPAIR TABLE on all tables that use UTF-8 and have a
FULLTEXT index.
-- Christian Hammers <ch@debian.org> Sat, 4 Jul 2009 02:31:21 +0200
mysql-dfsg-5.0 (5.1.14beta-2) unstable; urgency=low
* The BerkeleyDB Storage Engine is no longer supported. If the options
have-bdb or skip-bdb are found, MySQL will not start. If you have BDB
tables, you should change them to use another storage engine before
upgrading to 5.1.
-- Monty Taylor <mordred@inaugust.com> Thu, 18 Jan 2007 12:28:21 -0800
mysql-dfsg-5.0 (5.0.45-2) unstable; urgency=low
* Binary logging is now disabled by default. If you really need it (e.g. on
a replication master), remove the comment from the log_bin line in my.cnf.
-- Norbert Tretkowski <nobse@debian.org> Sat, 10 Nov 2007 16:26:35 +0100
mysql-dfsg-5.0 (5.0.18-9) unstable; urgency=low
* Rotation of the binary logs is now configured in /etc/mysql/my.cnf with
"expire-logs-days" which defaults to 20 days. The old file
/etc/mysql/debian-log-rotate.conf should be removed together with
/etc/cron.daily/mysql-server after this value has been adjusted. Note that
the old variable defined the number of files whereas the new one defines
a time span in days.
-- Christian Hammers <ch@debian.org> Tue, 24 Jan 2006 22:18:21 +0100

46
debian/mariadb-server-5.5.config vendored Normal file
View file

@ -0,0 +1,46 @@
#!/bin/bash -e
. /usr/share/debconf/confmodule
if [ -n "$DEBIAN_SCRIPT_DEBUG" ]; then set -v -x; DEBIAN_SCRIPT_TRACE=1; fi
${DEBIAN_SCRIPT_TRACE:+ echo "#42#DEBUG# RUNNING $0 $*" 1>&2 }
CNF=/etc/mysql/my.cnf
# Beware that there are two ypwhich one of them needs the 2>/dev/null!
if test -n "`which ypwhich 2>/dev/null`" && ypwhich >/dev/null 2>&1; then
db_input high mysql-server-5.1/nis_warning || true
db_go
fi
# only ask this question on fresh installs, during "reconfiguration" and when
# not upgrading from an existing 5.0 installation.
# there is also an additional check for empty root passwords in the
# postinst script when the tools are available for us to use.
if [ "$1" = "configure" ] && ([ -z "$2" ] && [ ! -e "/var/lib/mysql/debian-5.0.flag" ] ) || [ "$1" = "reconfigure" ]; then
while :; do
RET=""
db_input high mysql-server/root_password || true
db_go
db_get mysql-server/root_password
# if password isn't empty we ask for password verification
if [ -z "$RET" ]; then
db_fset mysql-server/root_password seen false
db_fset mysql-server/root_password_again seen false
break
fi
ROOT_PW="$RET"
db_input high mysql-server/root_password_again || true
db_go
db_get mysql-server/root_password_again
if [ "$RET" == "$ROOT_PW" ]; then
ROOT_PW=''
break
fi
db_fset mysql-server/password_mismatch seen false
db_input critical mysql-server/password_mismatch
db_set mysql-server/root_password ""
db_set mysql-server/root_password_again ""
db_go
done
fi

View file

@ -0,0 +1,5 @@
mariadb-server-5.3: command-with-path-in-maintainer-script postinst
mariadb-server-5.3: possible-bashism-in-maintainer-script postinst:81 'p{("a".."z","A".."Z",0..9)[int(rand(62))]}'
mariadb-server-5.3: possible-bashism-in-maintainer-script preinst:33 '${cmd/ */}'
mariadb-server-5.3: statically-linked-binary ./usr/bin/mysql_tzinfo_to_sql
mariadb-server-5.3: statically-linked-binary ./usr/sbin/mysqld

View file

@ -0,0 +1,9 @@
/etc/init.d/mysql\[[0-9]+\]: Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists\!$
/etc/init.d/mysql\[[0-9]+\]: '/usr/bin/mysqladmin --defaults-(extra-)?file=/etc/mysql/debian.cnf ping' resulted in$
/etc/mysql/debian-start\[[0-9]+\]: Checking for crashed MySQL tables\.$
mysqld\[[0-9]+\]: $
mysqld\[[0-9]+\]: Version: .* socket: '/var/run/mysqld/mysqld.sock' port: 3306$
mysqld\[[0-9]+\]: Warning: Ignoring user change to 'mysql' because the user was set to 'mysql' earlier on the command line$
mysqld_safe\[[0-9]+\]: started$
usermod\[[0-9]+\]: change user `mysql' GID from `([0-9]+)' to `\1'$
usermod\[[0-9]+\]: change user `mysql' shell from `/bin/false' to `/bin/false'$

View file

@ -0,0 +1,32 @@
/etc/init.d/mysql\[[0-9]+\]: [0-9]+ processes alive and '/usr/bin/mysqladmin --defaults-(extra-)?file=/etc/mysql/debian.cnf ping' resulted in$
/etc/init.d/mysql\[[0-9]+\]: Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists\!$
/etc/init.d/mysql\[[0-9]+\]: '/usr/bin/mysqladmin --defaults-(extra-)?file=/etc/mysql/debian.cnf ping' resulted in$
/etc/mysql/debian-start\[[0-9]+\]: Checking for crashed MySQL tables\.$
mysqld\[[0-9]+\]: ?$
mysqld\[[0-9]+\]: .*InnoDB: Shutdown completed
mysqld\[[0-9]+\]: .*InnoDB: Started;
mysqld\[[0-9]+\]: .*InnoDB: Starting shutdown\.\.\.$
mysqld\[[0-9]+\]: .*\[Note\] /usr/sbin/mysqld: Normal shutdown$
mysqld\[[0-9]+\]: .*\[Note\] /usr/sbin/mysqld: ready for connections\.$
mysqld\[[0-9]+\]: .*\[Note\] /usr/sbin/mysqld: Shutdown complete$
mysqld\[[0-9]+\]: /usr/sbin/mysqld: ready for connections\.$
mysqld\[[0-9]+\]: .*/usr/sbin/mysqld: Shutdown Complete$
mysqld\[[0-9]+\]: Version: .* socket
mysqld\[[0-9]+\]: Warning: Ignoring user change to 'mysql' because the user was set to 'mysql' earlier on the command line$
mysqld_safe\[[0-9]+\]: ?$
mysqld_safe\[[0-9]+\]: able to use the new GRANT command!$
mysqld_safe\[[0-9]+\]: ended$
mysqld_safe\[[0-9]+\]: http://www.mysql.com$
mysqld_safe\[[0-9]+\]: NOTE: If you are upgrading from a MySQL <= 3.22.10 you should run$
mysqld_safe\[[0-9]+\]: PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !$
mysqld_safe\[[0-9]+\]: Please report any problems with the /usr/bin/mysqlbug script!$
mysqld_safe\[[0-9]+\]: See the manual for more instructions.$
mysqld_safe\[[0-9]+\]: started$
mysqld_safe\[[0-9]+\]: Support MySQL by buying support/licenses at https://order.mysql.com$
mysqld_safe\[[0-9]+\]: The latest information about MySQL is available on the web at$
mysqld_safe\[[0-9]+\]: the /usr/bin/mysql_fix_privilege_tables. Otherwise you will not be$
mysqld_safe\[[0-9]+\]: To do so, start the server, then issue the following commands:$
mysqld_safe\[[0-9]+\]: /usr/bin/mysqladmin -u root -h app109 password 'new-password'$
mysqld_safe\[[0-9]+\]: /usr/bin/mysqladmin -u root password 'new-password'$
usermod\[[0-9]+\]: change user `mysql' GID from `([0-9]+)' to `\1'$
usermod\[[0-9]+\]: change user `mysql' shell from `/bin/false' to `/bin/false'$

View file

@ -0,0 +1,32 @@
/etc/init.d/mysql\[[0-9]+\]: [0-9]+ processes alive and '/usr/bin/mysqladmin --defaults-(extra-)?file=/etc/mysql/debian.cnf ping' resulted in$
/etc/init.d/mysql\[[0-9]+\]: Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists\!$
/etc/init.d/mysql\[[0-9]+\]: '/usr/bin/mysqladmin --defaults-(extra-)?file=/etc/mysql/debian.cnf ping' resulted in$
/etc/mysql/debian-start\[[0-9]+\]: Checking for crashed MySQL tables\.$
mysqld\[[0-9]+\]: ?$
mysqld\[[0-9]+\]: .*InnoDB: Shutdown completed
mysqld\[[0-9]+\]: .*InnoDB: Started;
mysqld\[[0-9]+\]: .*InnoDB: Starting shutdown\.\.\.$
mysqld\[[0-9]+\]: .*\[Note\] /usr/sbin/mysqld: Normal shutdown$
mysqld\[[0-9]+\]: .*\[Note\] /usr/sbin/mysqld: ready for connections\.$
mysqld\[[0-9]+\]: .*\[Note\] /usr/sbin/mysqld: Shutdown complete$
mysqld\[[0-9]+\]: /usr/sbin/mysqld: ready for connections\.$
mysqld\[[0-9]+\]: .*/usr/sbin/mysqld: Shutdown Complete$
mysqld\[[0-9]+\]: Version: .* socket
mysqld\[[0-9]+\]: Warning: Ignoring user change to 'mysql' because the user was set to 'mysql' earlier on the command line$
mysqld_safe\[[0-9]+\]: ?$
mysqld_safe\[[0-9]+\]: able to use the new GRANT command!$
mysqld_safe\[[0-9]+\]: ended$
mysqld_safe\[[0-9]+\]: http://www.mysql.com$
mysqld_safe\[[0-9]+\]: NOTE: If you are upgrading from a MySQL <= 3.22.10 you should run$
mysqld_safe\[[0-9]+\]: PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !$
mysqld_safe\[[0-9]+\]: Please report any problems with the /usr/bin/mysqlbug script!$
mysqld_safe\[[0-9]+\]: See the manual for more instructions.$
mysqld_safe\[[0-9]+\]: started$
mysqld_safe\[[0-9]+\]: Support MySQL by buying support/licenses at https://order.mysql.com$
mysqld_safe\[[0-9]+\]: The latest information about MySQL is available on the web at$
mysqld_safe\[[0-9]+\]: the /usr/bin/mysql_fix_privilege_tables. Otherwise you will not be$
mysqld_safe\[[0-9]+\]: To do so, start the server, then issue the following commands:$
mysqld_safe\[[0-9]+\]: /usr/bin/mysqladmin -u root -h app109 password 'new-password'$
mysqld_safe\[[0-9]+\]: /usr/bin/mysqladmin -u root password 'new-password'$
usermod\[[0-9]+\]: change user `mysql' GID from `([0-9]+)' to `\1'$
usermod\[[0-9]+\]: change user `mysql' shell from `/bin/false' to `/bin/false'$

View file

@ -0,0 +1,27 @@
# - I put everything in one block and added sharedscripts, so that mysql gets
# flush-logs'd only once.
# Else the binary logs would automatically increase by n times every day.
# - The error log is obsolete, messages go to syslog now.
/var/log/mysql.log /var/log/mysql/mysql.log /var/log/mysql/mysql-slow.log {
daily
rotate 7
missingok
create 640 mysql adm
compress
sharedscripts
postrotate
test -x /usr/bin/mysqladmin || exit 0
# If this fails, check debian.conf!
MYADMIN="/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf"
if [ -z "`$MYADMIN ping 2>/dev/null`" ]; then
# Really no mysqld or rather a missing debian-sys-maint user?
# If this occurs and is not a error please report a bug.
if ps cax | grep -q mysqld; then
exit 1
fi
else
$MYADMIN flush-logs
fi
endscript
}

187
debian/mariadb-server-5.5.mysql.init vendored Normal file
View file

@ -0,0 +1,187 @@
#!/bin/bash
#
### BEGIN INIT INFO
# Provides: mysql
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Should-Start: $network $named $time
# Should-Stop: $network $named $time
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start and stop the mysql database server daemon
# Description: Controls the main MariaDB database server daemon "mysqld"
# and its wrapper script "mysqld_safe".
### END INIT INFO
#
set -e
set -u
${DEBIAN_SCRIPT_DEBUG:+ set -v -x}
test -x /usr/sbin/mysqld || exit 0
. /lib/lsb/init-functions
SELF=$(cd $(dirname $0); pwd -P)/$(basename $0)
CONF=/etc/mysql/my.cnf
MYADMIN="/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf"
# priority can be overriden and "-s" adds output to stderr
ERR_LOGGER="logger -p daemon.err -t /etc/init.d/mysql -i"
# Safeguard (relative paths, core dumps..)
cd /
umask 077
# mysqladmin likes to read /root/.my.cnf. This is usually not what I want
# as many admins e.g. only store a password without a username there and
# so break my scripts.
export HOME=/etc/mysql/
## Fetch a particular option from mysql's invocation.
#
# Usage: void mysqld_get_param option
mysqld_get_param() {
/usr/sbin/mysqld --print-defaults \
| tr " " "\n" \
| grep -- "--$1" \
| tail -n 1 \
| cut -d= -f2
}
## Do some sanity checks before even trying to start mysqld.
sanity_checks() {
# check for config file
if [ ! -r /etc/mysql/my.cnf ]; then
log_warning_msg "$0: WARNING: /etc/mysql/my.cnf cannot be read. See README.Debian.gz"
echo "WARNING: /etc/mysql/my.cnf cannot be read. See README.Debian.gz" | $ERR_LOGGER
fi
# check for diskspace shortage
datadir=`mysqld_get_param datadir`
if LC_ALL=C BLOCKSIZE= df --portability $datadir/. | tail -n 1 | awk '{ exit ($4>4096) }'; then
log_failure_msg "$0: ERROR: The partition with $datadir is too full!"
echo "ERROR: The partition with $datadir is too full!" | $ERR_LOGGER
exit 1
fi
}
## Checks if there is a server running and if so if it is accessible.
#
# check_alive insists on a pingable server
# check_dead also fails if there is a lost mysqld in the process list
#
# Usage: boolean mysqld_status [check_alive|check_dead] [warn|nowarn]
mysqld_status () {
ping_output=`$MYADMIN ping 2>&1`; ping_alive=$(( ! $? ))
ps_alive=0
pidfile=`mysqld_get_param pid-file`
if [ -f "$pidfile" ] && ps `cat $pidfile` >/dev/null 2>&1; then ps_alive=1; fi
if [ "$1" = "check_alive" -a $ping_alive = 1 ] ||
[ "$1" = "check_dead" -a $ping_alive = 0 -a $ps_alive = 0 ]; then
return 0 # EXIT_SUCCESS
else
if [ "$2" = "warn" ]; then
echo -e "$ps_alive processes alive and '$MYADMIN ping' resulted in\n$ping_output\n" | $ERR_LOGGER -p daemon.debug
fi
return 1 # EXIT_FAILURE
fi
}
#
# main()
#
case "${1:-''}" in
'start')
sanity_checks;
# Start daemon
log_daemon_msg "Starting MariaDB database server" "mysqld"
if mysqld_status check_alive nowarn; then
log_progress_msg "already running"
log_end_msg 0
else
# Could be removed during boot
test -e /var/run/mysqld || install -m 755 -o mysql -g root -d /var/run/mysqld
# Start MariaDB!
/usr/bin/mysqld_safe > /dev/null 2>&1 &
# 6s was reported in #352070 to be too few when using ndbcluster
for i in $(seq 1 "${MYSQLD_STARTUP_TIMEOUT:-14}"); do
sleep 1
if mysqld_status check_alive nowarn ; then break; fi
log_progress_msg "."
done
if mysqld_status check_alive warn; then
log_end_msg 0
# Now start mysqlcheck or whatever the admin wants.
output=$(/etc/mysql/debian-start)
[ -n "$output" ] && log_action_msg "$output"
else
log_end_msg 1
log_failure_msg "Please take a look at the syslog"
fi
fi
;;
'stop')
# * As a passwordless mysqladmin (e.g. via ~/.my.cnf) must be possible
# at least for cron, we can rely on it here, too. (although we have
# to specify it explicit as e.g. sudo environments points to the normal
# users home and not /root)
log_daemon_msg "Stopping MariaDB database server" "mysqld"
if ! mysqld_status check_dead nowarn; then
set +e
shutdown_out=`$MYADMIN shutdown 2>&1`; r=$?
set -e
if [ "$r" -ne 0 ]; then
log_end_msg 1
[ "$VERBOSE" != "no" ] && log_failure_msg "Error: $shutdown_out"
log_daemon_msg "Killing MariaDB database server by signal" "mysqld"
killall -15 mysqld
server_down=
for i in 1 2 3 4 5 6 7 8 9 10; do
sleep 1
if mysqld_status check_dead nowarn; then server_down=1; break; fi
done
if test -z "$server_down"; then killall -9 mysqld; fi
fi
fi
if ! mysqld_status check_dead warn; then
log_end_msg 1
log_failure_msg "Please stop MariaDB manually and read /usr/share/doc/mariadb-server-5.3/README.Debian.gz!"
exit -1
else
log_end_msg 0
fi
;;
'restart')
set +e; $SELF stop; set -e
$SELF start
;;
'reload'|'force-reload')
log_daemon_msg "Reloading MariaDB database server" "mysqld"
$MYADMIN reload
log_end_msg 0
;;
'status')
if mysqld_status check_alive nowarn; then
log_action_msg "$($MYADMIN version)"
else
log_action_msg "MariaDB is stopped."
exit 3
fi
;;
*)
echo "Usage: $SELF start|stop|restart|reload|force-reload|status"
exit 1
;;
esac

182
debian/mariadb-server-5.5.preinst vendored Normal file
View file

@ -0,0 +1,182 @@
#!/bin/bash -e
#
# summary of how this script can be called:
# * <new-preinst> install
# * <new-preinst> install <old-version>
# * <new-preinst> upgrade <old-version>
# * <old-preinst> abort-upgrade <new-version>
#
. /usr/share/debconf/confmodule
if [ -n "$DEBIAN_SCRIPT_DEBUG" ]; then set -v -x; DEBIAN_SCRIPT_TRACE=1; fi
${DEBIAN_SCRIPT_TRACE:+ echo "#42#DEBUG# RUNNING $0 $*" 1>&2 }
export PATH=$PATH:/sbin:/usr/sbin:/bin:/usr/bin
MYADMIN="/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf"
DATADIR=/var/lib/mysql
LOGDIR=/var/log/mysql
UPGRADEDIR=/var/lib/mysql-upgrade
# Try to stop the server in a sane way. If it does not success let the admin
# do it himself. No database directories should be removed while the server
# is running! Another mysqld in e.g. a different chroot is fine for us.
stop_server() {
if [ ! -x /etc/init.d/mysql ]; then return; fi
set +e
if [ -x /usr/sbin/invoke-rc.d ]; then
cmd="invoke-rc.d mysql stop"
else
cmd="/etc/init.d/mysql stop"
fi
$cmd
errno=$?
set -e
# 0=ok, 100=no init script (fresh install)
if [ "$errno" != 0 -a "$errno" != 100 ]; then
echo "${cmd/ */} returned $errno" 1>&2
echo "There is a MySQL server running, but we failed in our attempts to stop it." 1>&2
echo "Stop it yourself and try again!" 1>&2
db_stop
exit 1
fi
}
################################ main() ##########################
this_version=5.5
# Abort if an NDB cluster is in use.
if egrep -qi -r '^[^#]*ndb.connectstring|^[:space:]*\[[:space:]*ndb_mgmd' /etc/mysql/; then
db_fset mysql-server/no_upgrade_when_using_ndb seen false || true
db_input high mysql-server/no_upgrade_when_using_ndb || true
db_go
db_stop
exit 1
fi
# Abort if skip-bdb option is enabled, required for 5.0 -> 5.1 upgrades.
#TODO
# Safe the user from stupidities.
show_downgrade_warning=0
for i in `ls $DATADIR/debian-*.flag 2>/dev/null`; do
found_version=`echo $i | sed 's/.*debian-\([0-9\.]\+\).flag/\1/'`
if dpkg --compare-versions "$this_version" '<<' "$found_version"; then
show_downgrade_warning=1
break;
fi
done
if [ "$show_downgrade_warning" = 1 ]; then
db_fset mariadb-server-$this_version/really_downgrade seen false || true
db_input medium mariadb-server-$this_version/really_downgrade || true
db_go
db_get mariadb-server-$this_version/really_downgrade || true
if [ "$RET" = "true" ]; then
rm -f $DATADIR/debian-*.flag
touch $DATADIR/debian-$this_version.flag
else
echo "Aborting downgrade from (at least) $found_version to $this_version." 1>&2
echo "If are sure you want to downgrade to $this_version, remove the file" 1>&2
echo "$DATADIR/debian-*.flag and try installing again." 1>&2
db_stop
exit 1
fi
fi
# to be sure
stop_server
# If we use NIS then errors should be tolerated. It's up to the
# user to ensure that the mysql user is correctly setup.
# Beware that there are two ypwhich one of them needs the 2>/dev/null!
if test -n "`which ypwhich 2>/dev/null`" && ypwhich >/dev/null 2>&1; then
set +e
fi
#
# Now we have to ensure the following state:
# /etc/passwd: mysql:x:100:101:MySQL Server:/var/lib/mysql:/bin/false
# /etc/group: mysql:x:101:
#
# Sadly there could any state be present on the system so we have to
# modify everything carefully i.e. not doing a chown before creating
# the user etc...
#
# creating mysql group if he isn't already there
if ! getent group mysql >/dev/null; then
# Adding system group: mysql.
addgroup --system mysql >/dev/null
fi
# creating mysql user if he isn't already there
if ! getent passwd mysql >/dev/null; then
# Adding system user: mysql.
adduser \
--system \
--disabled-login \
--ingroup mysql \
--home $DATADIR \
--gecos "MySQL Server" \
--shell /bin/false \
mysql >/dev/null
fi
# end of NIS tolerance zone
set -e
# if there's a symlink, let's store where it's pointing, because otherwise
# it's going to be lost in some situations
for dir in DATADIR LOGDIR; do
checkdir=`eval echo "$"$dir`
if [ -L "$checkdir" ]; then
mkdir -p "$UPGRADEDIR"
cp -d "$checkdir" "$UPGRADEDIR/$dir.link"
fi
done
# creating mysql home directory
if [ ! -d $DATADIR -a ! -L $DATADIR ]; then
mkdir $DATADIR
fi
# checking disc space
if LC_ALL=C BLOCKSIZE= df --portability $DATADIR/. | tail -n 1 | awk '{ exit ($4>1000) }'; then
echo "ERROR: There's not enough space in $DATADIR/" 1>&2
db_stop
exit 1
fi
# Since the home directory was created before putting the user into
# the mysql group and moreover we cannot guarantee that the
# permissions were correctly *before* calling this script, we fix them now.
# In case we use NIS and no mysql user is present then this script should
# better fail now than later..
# The "set +e" is necessary as e.g. a ".journal" of a ext3 partition is
# not chgrp'able (#318435).
set +e
chown mysql:mysql $DATADIR
find $DATADIR -follow -not -group mysql -print0 2>/dev/null \
| xargs -0 --no-run-if-empty chgrp mysql
set -e
# Some files below /etc/ were possibly in the mysql-server-5.0/etch package
# before. They get overwritten by current ones to avoid unnecessary dpkg questions.
while read md5 file; do
if [ "`md5sum $file 2>/dev/null`" = "$md5 $file" ]; then
cp /usr/share/mysql-common/internal-use-only/`echo $file | sed 's°/°_°g'` $file
fi
done <<EOT
6691f2fdc5c6d27ff0260eb79813e1bc /etc/init.d/mysql
b53b9552d44661361d39157c3c7c51d3 /etc/logrotate.d/mysql-server
57f3e58f72582ca55100dc1ba0f1a8ae /etc/mysql/debian-start
EOT
db_stop
#DEBHELPER#
exit 0

8
debian/mariadb-server-5.5.prerm vendored Normal file
View file

@ -0,0 +1,8 @@
#!/bin/bash -e
. /usr/share/debconf/confmodule
if [ -n "$DEBIAN_SCRIPT_DEBUG" ]; then set -v -x; DEBIAN_SCRIPT_TRACE=1; fi
${DEBIAN_SCRIPT_TRACE:+ echo "#42#DEBUG# RUNNING $0 $*" 1>&2 }
#DEBHELPER#

89
debian/mariadb-server-5.5.templates vendored Normal file
View file

@ -0,0 +1,89 @@
# These templates have been reviewed by the debian-l10n-english
# team
#
# If modifications/additions/rewording are needed, please ask
# for an advice to debian-l10n-english@lists.debian.org
#
# Even minor modifications require translation updates and such
# changes should be coordinated with translators and reviewers.
Template: mariadb-server-5.3/really_downgrade
Type: boolean
Default: false
_Description: Really proceed with downgrade?
A file named /var/lib/mysql/debian-*.flag exists on this system.
.
Such a file is an indication that a mariadb-server package with a higher
version has been installed previously.
.
There is no guarantee that the version you're currently installing
will be able to use the current databases.
Template: mysql-server-5.1/nis_warning
Type: note
#flag:translate!:3,5
_Description: Important note for NIS/YP users
Using MariaDB under NIS/YP requires a mysql user account to be added on
the local system with:
.
adduser --system --group --home /var/lib/mysql mysql
.
You should also check the permissions and ownership of the
/var/lib/mysql directory:
.
/var/lib/mysql: drwxr-xr-x mysql mysql
Template: mysql-server-5.1/postrm_remove_databases
Type: boolean
Default: false
_Description: Remove all MariaDB databases?
The /var/lib/mysql directory which contains the MariaDB databases is about
to be removed.
.
If you're removing the MariaDB package in order to later install a more
recent version or if a different mariadb-server package is already
using it, the data should be kept.
Template: mysql-server-5.1/start_on_boot
Type: boolean
Default: true
_Description: Start the MariaDB server on boot?
The MariaDB server can be launched automatically at boot time or manually
with the '/etc/init.d/mysql start' command.
Template: mysql-server/root_password
Type: password
_Description: New password for the MariaDB "root" user:
While not mandatory, it is highly recommended that you set a password
for the MariaDB administrative "root" user.
.
If this field is left blank, the password will not be changed.
Template: mysql-server/root_password_again
Type: password
_Description: Repeat password for the MariaDB "root" user:
Template: mysql-server/error_setting_password
Type: error
_Description: Unable to set password for the MariaDB "root" user
An error occurred while setting the password for the MariaDB
administrative user. This may have happened because the account
already has a password, or because of a communication problem with
the MariaDB server.
.
You should check the account's password after the package installation.
.
Please read the /usr/share/doc/mariadb-server-5.3/README.Debian file
for more information.
Template: mysql-server/password_mismatch
Type: error
_Description: Password input error
The two passwords you entered were not the same. Please try again.
Template: mysql-server/no_upgrade_when_using_ndb
Type: error
_Description: NDB Cluster seems to be in use
MySQL-5.1 no longer provides NDB Cluster support. Please migrate to the new
mysql-cluster package and remove all lines starting with "ndb" from
all config files below /etc/mysql/.

26
debian/mariadb-server-core-5.5.files vendored Normal file
View file

@ -0,0 +1,26 @@
usr/sbin/mysqld
usr/share/man/man8/mysqld.8
usr/share/mysql/charsets
usr/share/mysql/czech
usr/share/mysql/danish
usr/share/mysql/dutch
usr/share/mysql/english
usr/share/mysql/estonian
usr/share/mysql/french
usr/share/mysql/german
usr/share/mysql/greek
usr/share/mysql/hungarian
usr/share/mysql/italian
usr/share/mysql/japanese
usr/share/mysql/korean
usr/share/mysql/norwegian
usr/share/mysql/norwegian-ny
usr/share/mysql/polish
usr/share/mysql/portuguese
usr/share/mysql/romanian
usr/share/mysql/russian
usr/share/mysql/serbian
usr/share/mysql/slovak
usr/share/mysql/spanish
usr/share/mysql/swedish
usr/share/mysql/ukrainian

98
debian/mariadb-test-5.5.dirs vendored Normal file
View file

@ -0,0 +1,98 @@
usr/bin
usr/share/man/man1
usr/share/mysql/mysql-test
usr/share/mysql/mysql-test/extra
usr/share/mysql/mysql-test/extra/binlog_tests
usr/share/mysql/mysql-test/extra/rpl_tests
usr/share/mysql/mysql-test/lib
usr/share/mysql/mysql-test/lib/My
usr/share/mysql/mysql-test/lib/My/SafeProcess
usr/share/mysql/mysql-test/lib/My/File
usr/share/mysql/mysql-test/lib/v1
usr/share/mysql/mysql-test/lib/v1/My
usr/share/mysql/mysql-test/collections
usr/share/mysql/mysql-test/t
usr/share/mysql/mysql-test/r
usr/share/mysql/mysql-test/include
usr/share/mysql/mysql-test/suite
usr/share/mysql/mysql-test/suite/parts
usr/share/mysql/mysql-test/suite/parts/inc
usr/share/mysql/mysql-test/suite/parts/t
usr/share/mysql/mysql-test/suite/parts/r
usr/share/mysql/mysql-test/suite/rpl_ndb
usr/share/mysql/mysql-test/suite/rpl_ndb/t
usr/share/mysql/mysql-test/suite/rpl_ndb/r
usr/share/mysql/mysql-test/suite/bugs
usr/share/mysql/mysql-test/suite/bugs/t
usr/share/mysql/mysql-test/suite/bugs/r
usr/share/mysql/mysql-test/suite/bugs/data
usr/share/mysql/mysql-test/suite/rpl
usr/share/mysql/mysql-test/suite/rpl/t
usr/share/mysql/mysql-test/suite/rpl/r
usr/share/mysql/mysql-test/suite/rpl/include
usr/share/mysql/mysql-test/suite/innodb
usr/share/mysql/mysql-test/suite/innodb/t
usr/share/mysql/mysql-test/suite/innodb/r
usr/share/mysql/mysql-test/suite/innodb/include
usr/share/mysql/mysql-test/suite/manual
usr/share/mysql/mysql-test/suite/manual/t
usr/share/mysql/mysql-test/suite/manual/r
usr/share/mysql/mysql-test/suite/stress
usr/share/mysql/mysql-test/suite/stress/t
usr/share/mysql/mysql-test/suite/stress/r
usr/share/mysql/mysql-test/suite/stress/include
usr/share/mysql/mysql-test/suite/jp
usr/share/mysql/mysql-test/suite/jp/t
usr/share/mysql/mysql-test/suite/jp/r
usr/share/mysql/mysql-test/suite/jp/include
usr/share/mysql/mysql-test/suite/jp/std_data
usr/share/mysql/mysql-test/suite/ndb
usr/share/mysql/mysql-test/suite/ndb/t
usr/share/mysql/mysql-test/suite/ndb/r
usr/share/mysql/mysql-test/suite/maria
usr/share/mysql/mysql-test/suite/maria/t
usr/share/mysql/mysql-test/suite/maria/r
usr/share/mysql/mysql-test/suite/funcs_2
usr/share/mysql/mysql-test/suite/funcs_2/lib
usr/share/mysql/mysql-test/suite/funcs_2/t
usr/share/mysql/mysql-test/suite/funcs_2/charset
usr/share/mysql/mysql-test/suite/funcs_2/r
usr/share/mysql/mysql-test/suite/funcs_2/include
usr/share/mysql/mysql-test/suite/funcs_2/data
usr/share/mysql/mysql-test/suite/binlog
usr/share/mysql/mysql-test/suite/binlog/t
usr/share/mysql/mysql-test/suite/binlog/r
usr/share/mysql/mysql-test/suite/binlog/std_data
usr/share/mysql/mysql-test/suite/ndb_team
usr/share/mysql/mysql-test/suite/ndb_team/t
usr/share/mysql/mysql-test/suite/ndb_team/r
usr/share/mysql/mysql-test/suite/federated
usr/share/mysql/mysql-test/suite/pbxt
usr/share/mysql/mysql-test/suite/pbxt/t
usr/share/mysql/mysql-test/suite/pbxt/r
usr/share/mysql/mysql-test/suite/funcs_1
usr/share/mysql/mysql-test/suite/funcs_1/cursors
usr/share/mysql/mysql-test/suite/funcs_1/bitdata
usr/share/mysql/mysql-test/suite/funcs_1/views
usr/share/mysql/mysql-test/suite/funcs_1/storedproc
usr/share/mysql/mysql-test/suite/funcs_1/triggers
usr/share/mysql/mysql-test/suite/funcs_1/lib
usr/share/mysql/mysql-test/suite/funcs_1/t
usr/share/mysql/mysql-test/suite/funcs_1/r
usr/share/mysql/mysql-test/suite/funcs_1/include
usr/share/mysql/mysql-test/suite/funcs_1/datadict
usr/share/mysql/mysql-test/suite/vcol
usr/share/mysql/mysql-test/suite/vcol/inc
usr/share/mysql/mysql-test/suite/vcol/t
usr/share/mysql/mysql-test/suite/vcol/r
usr/share/mysql/mysql-test/suite/oqgraph
usr/share/mysql/mysql-test/suite/oqgraph/t
usr/share/mysql/mysql-test/suite/oqgraph/r
usr/share/mysql/mysql-test/suite/oqgraph/include
usr/share/mysql/mysql-test/std_data
usr/share/mysql/mysql-test/std_data/ndb_backup50
usr/share/mysql/mysql-test/std_data/parts
usr/share/mysql/mysql-test/std_data/ndb_backup51_data_le
usr/share/mysql/mysql-test/std_data/ndb_backup51_data_be
usr/share/mysql/mysql-test/std_data/ndb_backup51
usr/share/mysql/mysql-test/std_data/funcs_1

9
debian/mariadb-test-5.5.files vendored Normal file
View file

@ -0,0 +1,9 @@
usr/bin/mysql_client_test
usr/bin/mysql_client_test_embedded
usr/bin/mysqltest_embedded
usr/share/man/man1/mysql_client_test.1
usr/share/man/man1/mysql_client_test_embedded.1
usr/bin/mysqltest
usr/share/man/man1/mysqltest.1
usr/share/man/man1/mysqltest_embedded.1
usr/share/mysql/mysql-test

2
debian/mariadb-test-5.5.links vendored Normal file
View file

@ -0,0 +1,2 @@
usr/share/mysql/mysql-test/mysql-test-run.pl usr/share/mysql/mysql-test/mysql-test-run
usr/share/mysql/mysql-test/mysql-test-run.pl usr/share/mysql/mysql-test/mtr

1
debian/mysql-common.dirs vendored Normal file
View file

@ -0,0 +1 @@
etc/mysql/conf.d/

3
debian/mysql-common.files vendored Normal file
View file

@ -0,0 +1,3 @@
etc/mysql/my.cnf
usr/share/mysql-common/internal-use-only
usr/share/lintian/overrides/mysql-common

2
debian/mysql-common.lintian-overrides vendored Normal file
View file

@ -0,0 +1,2 @@
script-not-executable ./usr/share/mysql-common/internal-use-only/_etc_init.d_mysql
script-not-executable ./usr/share/mysql-common/internal-use-only/_etc_mysql_debian-start

7
debian/mysql-common.postrm vendored Normal file
View file

@ -0,0 +1,7 @@
#!/bin/bash -e
if [ "$1" = "purge" ]; then
rmdir /etc/mysql 2>/dev/null || true
fi
#DEBHELPER#

11
debian/patches/00list vendored Normal file
View file

@ -0,0 +1,11 @@
# 01_MAKEFILES__Docs_Images_Makefile.in.dpatch
# 01_MAKEFILES__Docs_Makefile.in.dpatch
# 02_no_builtin_ndbcluster_plugin.dpatch
# 21_init__openquery_configtest.dpatch
33_scripts__mysql_create_system_tables__no_test.dpatch
38_scripts__mysqld_safe.sh__signals.dpatch
41_scripts__mysql_install_db.sh__no_test.dpatch
44_scripts__mysql_config__libs.dpatch
50_mysql-test__db_test.dpatch
# 60_zlib_innodb_workaround.dpatch
61_replace_dash_with_bash_mbug675185.dpatch

View file

@ -0,0 +1,776 @@
#! /bin/sh /usr/share/dpatch/dpatch-run
## 01_MAKEFILES__Docs_Makefile.in.dpatch by <ch@debian.org>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Creates Docs/Makefile.in
@DPATCH@
--- old/Docs/Images/Makefile.in 2005-03-01 02:08:01.877429040 +0100
+++ new/Docs/Images/Makefile.in 2005-02-28 21:21:24.000000000 +0100
@@ -0,0 +1,765 @@
+# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# @configure_input@
+
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+# Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+# Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+# Process this file with automake to create Makefile.in
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = .
+
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+target_triplet = @target@
+ACLOCAL = @ACLOCAL@
+ALLOCA = @ALLOCA@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+ASSEMBLER_FALSE = @ASSEMBLER_FALSE@
+ASSEMBLER_TRUE = @ASSEMBLER_TRUE@
+ASSEMBLER_sparc32_FALSE = @ASSEMBLER_sparc32_FALSE@
+ASSEMBLER_sparc32_TRUE = @ASSEMBLER_sparc32_TRUE@
+ASSEMBLER_sparc64_FALSE = @ASSEMBLER_sparc64_FALSE@
+ASSEMBLER_sparc64_TRUE = @ASSEMBLER_sparc64_TRUE@
+ASSEMBLER_x86_FALSE = @ASSEMBLER_x86_FALSE@
+ASSEMBLER_x86_TRUE = @ASSEMBLER_x86_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AVAILABLE_LANGUAGES = @AVAILABLE_LANGUAGES@
+AVAILABLE_LANGUAGES_ERRORS = @AVAILABLE_LANGUAGES_ERRORS@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CC_VERSION = @CC_VERSION@
+CFLAGS = @CFLAGS@
+CHARSETS_NEED_SOURCE = @CHARSETS_NEED_SOURCE@
+CHARSET_OBJS = @CHARSET_OBJS@
+CHARSET_SRCS = @CHARSET_SRCS@
+CHECK_PID = @CHECK_PID@
+CHMOD = @CHMOD@
+CLIENT_EXTRA_LDFLAGS = @CLIENT_EXTRA_LDFLAGS@
+CLIENT_LIBS = @CLIENT_LIBS@
+CMP = @CMP@
+COMPILATION_COMMENT = @COMPILATION_COMMENT@
+COMPILE_PSTACK_FALSE = @COMPILE_PSTACK_FALSE@
+COMPILE_PSTACK_TRUE = @COMPILE_PSTACK_TRUE@
+CONF_COMMAND = @CONF_COMMAND@
+CP = @CP@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CXXLDFLAGS = @CXXLDFLAGS@
+CXX_VERSION = @CXX_VERSION@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DOT_FRM_VERSION = @DOT_FRM_VERSION@
+DVIS = @DVIS@
+ECHO = @ECHO@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+F77 = @F77@
+FFLAGS = @FFLAGS@
+FIND_PROC = @FIND_PROC@
+GETCONF = @GETCONF@
+GXX = @GXX@
+HAVE_NETWARE_FALSE = @HAVE_NETWARE_FALSE@
+HAVE_NETWARE_TRUE = @HAVE_NETWARE_TRUE@
+HOSTNAME = @HOSTNAME@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+IS_LINUX = @IS_LINUX@
+KILL = @KILL@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBDL = @LIBDL@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@
+LM_CFLAGS = @LM_CFLAGS@
+LN = @LN@
+LN_CP_F = @LN_CP_F@
+LN_S = @LN_S@
+LOCAL_FALSE = @LOCAL_FALSE@
+LOCAL_TRUE = @LOCAL_TRUE@
+LTLIBOBJS = @LTLIBOBJS@
+MACHINE_TYPE = @MACHINE_TYPE@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MAKE_BINARY_DISTRIBUTION_OPTIONS = @MAKE_BINARY_DISTRIBUTION_OPTIONS@
+MAKE_SHELL = @MAKE_SHELL@
+MT_INCLUDES = @MT_INCLUDES@
+MT_LD_ADD = @MT_LD_ADD@
+MV = @MV@
+MYSQLD_DEFAULT_SWITCHES = @MYSQLD_DEFAULT_SWITCHES@
+MYSQLD_EXTRA_LDFLAGS = @MYSQLD_EXTRA_LDFLAGS@
+MYSQLD_USER = @MYSQLD_USER@
+MYSQL_BASE_VERSION = @MYSQL_BASE_VERSION@
+MYSQL_NO_DASH_VERSION = @MYSQL_NO_DASH_VERSION@
+MYSQL_SERVER_SUFFIX = @MYSQL_SERVER_SUFFIX@
+MYSQL_TCP_PORT = @MYSQL_TCP_PORT@
+MYSQL_TCP_PORT_DEFAULT = @MYSQL_TCP_PORT_DEFAULT@
+MYSQL_UNIX_ADDR = @MYSQL_UNIX_ADDR@
+MYSQL_VERSION_ID = @MYSQL_VERSION_ID@
+NOINST_LDFLAGS = @NOINST_LDFLAGS@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PDFMANUAL = @PDFMANUAL@
+PERL = @PERL@
+PERL5 = @PERL5@
+PROTOCOL_VERSION = @PROTOCOL_VERSION@
+PS = @PS@
+RANLIB = @RANLIB@
+RM = @RM@
+SAVE_ASFLAGS = @SAVE_ASFLAGS@
+SAVE_CFLAGS = @SAVE_CFLAGS@
+SAVE_CXXFLAGS = @SAVE_CXXFLAGS@
+SAVE_CXXLDFLAGS = @SAVE_CXXLDFLAGS@
+SAVE_LDFLAGS = @SAVE_LDFLAGS@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHARED_LIB_VERSION = @SHARED_LIB_VERSION@
+SHELL = @SHELL@
+STRIP = @STRIP@
+SYSTEM_TYPE = @SYSTEM_TYPE@
+TAR = @TAR@
+TERMCAP_LIB = @TERMCAP_LIB@
+THREAD_LOBJECTS = @THREAD_LOBJECTS@
+THREAD_LPROGRAMS = @THREAD_LPROGRAMS@
+VERSION = @VERSION@
+WRAPLIBS = @WRAPLIBS@
+YACC = @YACC@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_F77 = @ac_ct_F77@
+ac_ct_GETCONF = @ac_ct_GETCONF@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+bdb_includes = @bdb_includes@
+bdb_libs = @bdb_libs@
+bdb_libs_with_path = @bdb_libs_with_path@
+bench_dirs = @bench_dirs@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+default_charset = @default_charset@
+docs_dirs = @docs_dirs@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+innodb_includes = @innodb_includes@
+innodb_libs = @innodb_libs@
+innodb_system_libs = @innodb_system_libs@
+install_sh = @install_sh@
+isam_libs = @isam_libs@
+libdir = @libdir@
+libexecdir = @libexecdir@
+libmysqld_dirs = @libmysqld_dirs@
+linked_client_targets = @linked_client_targets@
+linked_netware_sources = @linked_netware_sources@
+localstatedir = @localstatedir@
+man_dirs = @man_dirs@
+mandir = @mandir@
+netware_dir = @netware_dir@
+oldincludedir = @oldincludedir@
+openssl_includes = @openssl_includes@
+openssl_libs = @openssl_libs@
+orbit_idl = @orbit_idl@
+orbit_includes = @orbit_includes@
+orbit_libs = @orbit_libs@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+pstack_dirs = @pstack_dirs@
+pstack_libs = @pstack_libs@
+readline_dir = @readline_dir@
+readline_link = @readline_link@
+sbindir = @sbindir@
+server_scripts = @server_scripts@
+sharedstatedir = @sharedstatedir@
+sql_client_dirs = @sql_client_dirs@
+sql_server_dirs = @sql_server_dirs@
+sysconfdir = @sysconfdir@
+target = @target@
+target_alias = @target_alias@
+target_cpu = @target_cpu@
+target_os = @target_os@
+target_vendor = @target_vendor@
+thread_dirs = @thread_dirs@
+tools_dirs = @tools_dirs@
+uname_prog = @uname_prog@
+vio_dir = @vio_dir@
+vio_libs = @vio_libs@
+
+AUTOMAKE_OPTIONS = foreign
+
+# These are built from source in the Docs directory
+EXTRA_DIST = INSTALL-SOURCE README COPYING EXCEPTIONS-CLIENT
+SUBDIRS = . include @docs_dirs@ @readline_dir@ \
+ @thread_dirs@ pstack @sql_client_dirs@ \
+ @sql_server_dirs@ scripts @man_dirs@ tests \
+ BUILD netware os2 @libmysqld_dirs@ \
+ @bench_dirs@ support-files @tools_dirs@
+
+
+# Relink after clean
+linked_sources = linked_client_sources linked_server_sources \
+ linked_libmysql_sources linked_libmysql_r_sources \
+ linked_libmysqld_sources linked_libmysqldex_sources \
+ linked_include_sources @linked_netware_sources@
+
+
+CLEANFILES = $(linked_sources)
+subdir = .
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = config.h
+CONFIG_CLEAN_FILES = bdb/Makefile
+DIST_SOURCES =
+
+RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \
+ ps-recursive install-info-recursive uninstall-info-recursive \
+ all-recursive install-data-recursive install-exec-recursive \
+ installdirs-recursive install-recursive uninstall-recursive \
+ check-recursive installcheck-recursive
+DIST_COMMON = README $(srcdir)/Makefile.in $(srcdir)/configure COPYING \
+ ChangeLog Makefile.am acconfig.h acinclude.m4 aclocal.m4 \
+ config.guess config.h.in config.sub configure configure.in \
+ depcomp install-sh ltconfig ltmain.sh missing mkinstalldirs
+DIST_SUBDIRS = $(SUBDIRS)
+all: config.h
+ $(MAKE) $(AM_MAKEFLAGS) all-recursive
+
+.SUFFIXES:
+
+am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
+ configure.lineno
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign Makefile
+Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status
+ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)
+
+$(top_builddir)/config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ $(SHELL) ./config.status --recheck
+$(srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
+ cd $(srcdir) && $(AUTOCONF)
+
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in acinclude.m4
+ cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+
+stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
+ @rm -f stamp-h1
+ cd $(top_builddir) && $(SHELL) ./config.status config.h
+
+$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(top_srcdir)/configure.in $(ACLOCAL_M4) $(top_srcdir)/acconfig.h
+ cd $(top_srcdir) && $(AUTOHEADER)
+ touch $(srcdir)/config.h.in
+
+distclean-hdr:
+ -rm -f config.h stamp-h1
+bdb/Makefile: $(top_builddir)/config.status $(top_srcdir)/bdb/Makefile.in
+ cd $(top_builddir) && $(SHELL) ./config.status $@
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+distclean-libtool:
+ -rm -f libtool
+uninstall-info-am:
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @set fnord $$MAKEFLAGS; amf=$$2; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+ @set fnord $$MAKEFLAGS; amf=$$2; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ETAGS = etags
+ETAGSFLAGS =
+
+CTAGS = ctags
+CTAGSFLAGS =
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ mkid -fID $$unique
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ if (etags --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ else \
+ include_option=--include; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test -f $$subdir/TAGS && \
+ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(ETAGS_ARGS)$$tags$$unique" \
+ || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique
+
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+
+top_distdir = .
+distdir = $(PACKAGE)-$(VERSION)
+
+am__remove_distdir = \
+ { test ! -d $(distdir) \
+ || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
+ && rm -fr $(distdir); }; }
+
+GZIP_ENV = --best
+distuninstallcheck_listfiles = find . -type f -print
+distcleancheck_listfiles = find . -type f -print
+
+distdir: $(DISTFILES)
+ $(am__remove_distdir)
+ mkdir $(distdir)
+ $(mkinstalldirs) $(distdir)/bdb $(distdir)/include
+ @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+ list='$(DISTFILES)'; for file in $$list; do \
+ case $$file in \
+ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+ esac; \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+ dir="/$$dir"; \
+ $(mkinstalldirs) "$(distdir)$$dir"; \
+ else \
+ dir=''; \
+ fi; \
+ if test -d $$d/$$file; then \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ else \
+ test -f $(distdir)/$$file \
+ || cp -p $$d/$$file $(distdir)/$$file \
+ || exit 1; \
+ fi; \
+ done
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test -d $(distdir)/$$subdir \
+ || mkdir $(distdir)/$$subdir \
+ || exit 1; \
+ (cd $$subdir && \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$(top_distdir)" \
+ distdir=../$(distdir)/$$subdir \
+ distdir) \
+ || exit 1; \
+ fi; \
+ done
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$(top_distdir)" distdir="$(distdir)" \
+ dist-hook
+ -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
+ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
+ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
+ ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
+ || chmod -R a+r $(distdir)
+dist-gzip: distdir
+ $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ $(am__remove_distdir)
+
+dist dist-all: distdir
+ $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ $(am__remove_distdir)
+
+# This target untars the dist file and tries a VPATH configuration. Then
+# it guarantees that the distribution is self-contained by making another
+# tarfile.
+distcheck: dist
+ $(am__remove_distdir)
+ GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf -
+ chmod -R a-w $(distdir); chmod a+w $(distdir)
+ mkdir $(distdir)/_build
+ mkdir $(distdir)/_inst
+ chmod a-w $(distdir)
+ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
+ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
+ && cd $(distdir)/_build \
+ && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+ $(DISTCHECK_CONFIGURE_FLAGS) \
+ && $(MAKE) $(AM_MAKEFLAGS) \
+ && $(MAKE) $(AM_MAKEFLAGS) dvi \
+ && $(MAKE) $(AM_MAKEFLAGS) check \
+ && $(MAKE) $(AM_MAKEFLAGS) install \
+ && $(MAKE) $(AM_MAKEFLAGS) installcheck \
+ && $(MAKE) $(AM_MAKEFLAGS) uninstall \
+ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
+ distuninstallcheck \
+ && chmod -R a-w "$$dc_install_base" \
+ && ({ \
+ (cd ../.. && $(mkinstalldirs) "$$dc_destdir") \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
+ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
+ } || { rm -rf "$$dc_destdir"; exit 1; }) \
+ && rm -rf "$$dc_destdir" \
+ && $(MAKE) $(AM_MAKEFLAGS) dist-gzip \
+ && rm -f $(distdir).tar.gz \
+ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
+ $(am__remove_distdir)
+ @echo "$(distdir).tar.gz is ready for distribution" | \
+ sed 'h;s/./=/g;p;x;p;x'
+distuninstallcheck:
+ @cd $(distuninstallcheck_dir) \
+ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
+ || { echo "ERROR: files left after uninstall:" ; \
+ if test -n "$(DESTDIR)"; then \
+ echo " (check DESTDIR support)"; \
+ fi ; \
+ $(distuninstallcheck_listfiles) ; \
+ exit 1; } >&2
+distcleancheck: distclean
+ @if test '$(srcdir)' = . ; then \
+ echo "ERROR: distcleancheck can only run from a VPATH build" ; \
+ exit 1 ; \
+ fi
+ @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
+ || { echo "ERROR: files left in build directory after distclean:" ; \
+ $(distcleancheck_listfiles) ; \
+ exit 1; } >&2
+check-am: all-am
+check: check-recursive
+all-am: Makefile config.h
+installdirs: installdirs-recursive
+installdirs-am:
+
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-hdr distclean-libtool \
+ distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ -rm -rf $(top_srcdir)/autom4te.cache
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
+ clean-generic clean-libtool clean-recursive ctags \
+ ctags-recursive dist dist-all dist-gzip distcheck distclean \
+ distclean-generic distclean-hdr distclean-libtool \
+ distclean-recursive distclean-tags distcleancheck distdir \
+ distuninstallcheck dvi dvi-am dvi-recursive info info-am \
+ info-recursive install install-am install-data install-data-am \
+ install-data-recursive install-exec install-exec-am \
+ install-exec-recursive install-info install-info-am \
+ install-info-recursive install-man install-recursive \
+ install-strip installcheck installcheck-am installdirs \
+ installdirs-am installdirs-recursive maintainer-clean \
+ maintainer-clean-generic maintainer-clean-recursive mostlyclean \
+ mostlyclean-generic mostlyclean-libtool mostlyclean-recursive \
+ pdf pdf-am pdf-recursive ps ps-am ps-recursive tags \
+ tags-recursive uninstall uninstall-am uninstall-info-am \
+ uninstall-info-recursive uninstall-recursive
+
+
+# This is just so that the linking is done early.
+config.h: $(linked_sources)
+
+linked_include_sources:
+ cd include; $(MAKE) link_sources
+ echo timestamp > linked_include_sources
+
+linked_client_sources: @linked_client_targets@
+ cd client; $(MAKE) link_sources
+ echo timestamp > linked_client_sources
+
+linked_libmysql_sources:
+ cd libmysql; $(MAKE) link_sources
+ echo timestamp > linked_libmysql_sources
+
+linked_libmysql_r_sources: linked_libmysql_sources
+ cd libmysql_r; $(MAKE) link_sources
+ echo timestamp > linked_libmysql_r_sources
+
+linked_libmysqld_sources:
+ cd libmysqld; $(MAKE) link_sources
+ echo timestamp > linked_libmysqld_sources
+
+linked_libmysqldex_sources:
+ cd libmysqld/examples; $(MAKE) link_sources
+ echo timestamp > linked_libmysqldex_sources
+
+linked_netware_sources:
+ cd @netware_dir@; $(MAKE) link_sources
+ echo timestamp > linked_netware_sources
+
+#avoid recursive make calls in sql directory
+linked_server_sources:
+ cd sql; rm -f mini_client_errors.c;@LN_CP_F@ ../libmysql/errmsg.c mini_client_errors.c
+ echo timestamp > linked_server_sources
+
+# Create permission databases
+init-db: all
+ $(top_builddir)/scripts/mysql_install_db
+
+bin-dist: all
+ $(top_builddir)/scripts/make_binary_distribution @MAKE_BINARY_DISTRIBUTION_OPTIONS@
+
+# Remove BK's "SCCS" subdirectories from source distribution
+dist-hook:
+ rm -rf `find $(distdir) -type d -name SCCS`
+
+tags:
+ support-files/build-tags
+.PHONY: init-db bin-dist
+
+# Test installation
+
+test:
+ cd mysql-test ; ./mysql-test-run
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:

View file

@ -0,0 +1,776 @@
#! /bin/sh /usr/share/dpatch/dpatch-run
## 01_MAKEFILES__Docs_Makefile.in.dpatch by <ch@debian.org>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Creates Docs/Makefile.in
@DPATCH@
--- old/Docs/Makefile.in 2005-03-01 02:08:01.877429040 +0100
+++ new/Docs/Makefile.in 2005-02-28 21:21:24.000000000 +0100
@@ -0,0 +1,765 @@
+# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# @configure_input@
+
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+# Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+# Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+# Process this file with automake to create Makefile.in
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = .
+
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+target_triplet = @target@
+ACLOCAL = @ACLOCAL@
+ALLOCA = @ALLOCA@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+ASSEMBLER_FALSE = @ASSEMBLER_FALSE@
+ASSEMBLER_TRUE = @ASSEMBLER_TRUE@
+ASSEMBLER_sparc32_FALSE = @ASSEMBLER_sparc32_FALSE@
+ASSEMBLER_sparc32_TRUE = @ASSEMBLER_sparc32_TRUE@
+ASSEMBLER_sparc64_FALSE = @ASSEMBLER_sparc64_FALSE@
+ASSEMBLER_sparc64_TRUE = @ASSEMBLER_sparc64_TRUE@
+ASSEMBLER_x86_FALSE = @ASSEMBLER_x86_FALSE@
+ASSEMBLER_x86_TRUE = @ASSEMBLER_x86_TRUE@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AVAILABLE_LANGUAGES = @AVAILABLE_LANGUAGES@
+AVAILABLE_LANGUAGES_ERRORS = @AVAILABLE_LANGUAGES_ERRORS@
+AWK = @AWK@
+CC = @CC@
+CCAS = @CCAS@
+CCASFLAGS = @CCASFLAGS@
+CCDEPMODE = @CCDEPMODE@
+CC_VERSION = @CC_VERSION@
+CFLAGS = @CFLAGS@
+CHARSETS_NEED_SOURCE = @CHARSETS_NEED_SOURCE@
+CHARSET_OBJS = @CHARSET_OBJS@
+CHARSET_SRCS = @CHARSET_SRCS@
+CHECK_PID = @CHECK_PID@
+CHMOD = @CHMOD@
+CLIENT_EXTRA_LDFLAGS = @CLIENT_EXTRA_LDFLAGS@
+CLIENT_LIBS = @CLIENT_LIBS@
+CMP = @CMP@
+COMPILATION_COMMENT = @COMPILATION_COMMENT@
+COMPILE_PSTACK_FALSE = @COMPILE_PSTACK_FALSE@
+COMPILE_PSTACK_TRUE = @COMPILE_PSTACK_TRUE@
+CONF_COMMAND = @CONF_COMMAND@
+CP = @CP@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CXXLDFLAGS = @CXXLDFLAGS@
+CXX_VERSION = @CXX_VERSION@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DOT_FRM_VERSION = @DOT_FRM_VERSION@
+DVIS = @DVIS@
+ECHO = @ECHO@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+F77 = @F77@
+FFLAGS = @FFLAGS@
+FIND_PROC = @FIND_PROC@
+GETCONF = @GETCONF@
+GXX = @GXX@
+HAVE_NETWARE_FALSE = @HAVE_NETWARE_FALSE@
+HAVE_NETWARE_TRUE = @HAVE_NETWARE_TRUE@
+HOSTNAME = @HOSTNAME@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+IS_LINUX = @IS_LINUX@
+KILL = @KILL@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBDL = @LIBDL@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIB_EXTRA_CCFLAGS = @LIB_EXTRA_CCFLAGS@
+LM_CFLAGS = @LM_CFLAGS@
+LN = @LN@
+LN_CP_F = @LN_CP_F@
+LN_S = @LN_S@
+LOCAL_FALSE = @LOCAL_FALSE@
+LOCAL_TRUE = @LOCAL_TRUE@
+LTLIBOBJS = @LTLIBOBJS@
+MACHINE_TYPE = @MACHINE_TYPE@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MAKE_BINARY_DISTRIBUTION_OPTIONS = @MAKE_BINARY_DISTRIBUTION_OPTIONS@
+MAKE_SHELL = @MAKE_SHELL@
+MT_INCLUDES = @MT_INCLUDES@
+MT_LD_ADD = @MT_LD_ADD@
+MV = @MV@
+MYSQLD_DEFAULT_SWITCHES = @MYSQLD_DEFAULT_SWITCHES@
+MYSQLD_EXTRA_LDFLAGS = @MYSQLD_EXTRA_LDFLAGS@
+MYSQLD_USER = @MYSQLD_USER@
+MYSQL_BASE_VERSION = @MYSQL_BASE_VERSION@
+MYSQL_NO_DASH_VERSION = @MYSQL_NO_DASH_VERSION@
+MYSQL_SERVER_SUFFIX = @MYSQL_SERVER_SUFFIX@
+MYSQL_TCP_PORT = @MYSQL_TCP_PORT@
+MYSQL_TCP_PORT_DEFAULT = @MYSQL_TCP_PORT_DEFAULT@
+MYSQL_UNIX_ADDR = @MYSQL_UNIX_ADDR@
+MYSQL_VERSION_ID = @MYSQL_VERSION_ID@
+NOINST_LDFLAGS = @NOINST_LDFLAGS@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PDFMANUAL = @PDFMANUAL@
+PERL = @PERL@
+PERL5 = @PERL5@
+PROTOCOL_VERSION = @PROTOCOL_VERSION@
+PS = @PS@
+RANLIB = @RANLIB@
+RM = @RM@
+SAVE_ASFLAGS = @SAVE_ASFLAGS@
+SAVE_CFLAGS = @SAVE_CFLAGS@
+SAVE_CXXFLAGS = @SAVE_CXXFLAGS@
+SAVE_CXXLDFLAGS = @SAVE_CXXLDFLAGS@
+SAVE_LDFLAGS = @SAVE_LDFLAGS@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHARED_LIB_VERSION = @SHARED_LIB_VERSION@
+SHELL = @SHELL@
+STRIP = @STRIP@
+SYSTEM_TYPE = @SYSTEM_TYPE@
+TAR = @TAR@
+TERMCAP_LIB = @TERMCAP_LIB@
+THREAD_LOBJECTS = @THREAD_LOBJECTS@
+THREAD_LPROGRAMS = @THREAD_LPROGRAMS@
+VERSION = @VERSION@
+WRAPLIBS = @WRAPLIBS@
+YACC = @YACC@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_F77 = @ac_ct_F77@
+ac_ct_GETCONF = @ac_ct_GETCONF@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+bdb_includes = @bdb_includes@
+bdb_libs = @bdb_libs@
+bdb_libs_with_path = @bdb_libs_with_path@
+bench_dirs = @bench_dirs@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+default_charset = @default_charset@
+docs_dirs = @docs_dirs@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+innodb_includes = @innodb_includes@
+innodb_libs = @innodb_libs@
+innodb_system_libs = @innodb_system_libs@
+install_sh = @install_sh@
+isam_libs = @isam_libs@
+libdir = @libdir@
+libexecdir = @libexecdir@
+libmysqld_dirs = @libmysqld_dirs@
+linked_client_targets = @linked_client_targets@
+linked_netware_sources = @linked_netware_sources@
+localstatedir = @localstatedir@
+man_dirs = @man_dirs@
+mandir = @mandir@
+netware_dir = @netware_dir@
+oldincludedir = @oldincludedir@
+openssl_includes = @openssl_includes@
+openssl_libs = @openssl_libs@
+orbit_idl = @orbit_idl@
+orbit_includes = @orbit_includes@
+orbit_libs = @orbit_libs@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+pstack_dirs = @pstack_dirs@
+pstack_libs = @pstack_libs@
+readline_dir = @readline_dir@
+readline_link = @readline_link@
+sbindir = @sbindir@
+server_scripts = @server_scripts@
+sharedstatedir = @sharedstatedir@
+sql_client_dirs = @sql_client_dirs@
+sql_server_dirs = @sql_server_dirs@
+sysconfdir = @sysconfdir@
+target = @target@
+target_alias = @target_alias@
+target_cpu = @target_cpu@
+target_os = @target_os@
+target_vendor = @target_vendor@
+thread_dirs = @thread_dirs@
+tools_dirs = @tools_dirs@
+uname_prog = @uname_prog@
+vio_dir = @vio_dir@
+vio_libs = @vio_libs@
+
+AUTOMAKE_OPTIONS = foreign
+
+# These are built from source in the Docs directory
+EXTRA_DIST = INSTALL-SOURCE README COPYING EXCEPTIONS-CLIENT
+SUBDIRS = . include @docs_dirs@ @readline_dir@ \
+ @thread_dirs@ pstack @sql_client_dirs@ \
+ @sql_server_dirs@ scripts @man_dirs@ tests \
+ BUILD netware os2 @libmysqld_dirs@ \
+ @bench_dirs@ support-files @tools_dirs@
+
+
+# Relink after clean
+linked_sources = linked_client_sources linked_server_sources \
+ linked_libmysql_sources linked_libmysql_r_sources \
+ linked_libmysqld_sources linked_libmysqldex_sources \
+ linked_include_sources @linked_netware_sources@
+
+
+CLEANFILES = $(linked_sources)
+subdir = .
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = config.h
+CONFIG_CLEAN_FILES = bdb/Makefile
+DIST_SOURCES =
+
+RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \
+ ps-recursive install-info-recursive uninstall-info-recursive \
+ all-recursive install-data-recursive install-exec-recursive \
+ installdirs-recursive install-recursive uninstall-recursive \
+ check-recursive installcheck-recursive
+DIST_COMMON = README $(srcdir)/Makefile.in $(srcdir)/configure COPYING \
+ ChangeLog Makefile.am acconfig.h acinclude.m4 aclocal.m4 \
+ config.guess config.h.in config.sub configure configure.in \
+ depcomp install-sh ltconfig ltmain.sh missing mkinstalldirs
+DIST_SUBDIRS = $(SUBDIRS)
+all: config.h
+ $(MAKE) $(AM_MAKEFLAGS) all-recursive
+
+.SUFFIXES:
+
+am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
+ configure.lineno
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign Makefile
+Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status
+ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)
+
+$(top_builddir)/config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ $(SHELL) ./config.status --recheck
+$(srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
+ cd $(srcdir) && $(AUTOCONF)
+
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in acinclude.m4
+ cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+
+stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
+ @rm -f stamp-h1
+ cd $(top_builddir) && $(SHELL) ./config.status config.h
+
+$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(top_srcdir)/configure.in $(ACLOCAL_M4) $(top_srcdir)/acconfig.h
+ cd $(top_srcdir) && $(AUTOHEADER)
+ touch $(srcdir)/config.h.in
+
+distclean-hdr:
+ -rm -f config.h stamp-h1
+bdb/Makefile: $(top_builddir)/config.status $(top_srcdir)/bdb/Makefile.in
+ cd $(top_builddir) && $(SHELL) ./config.status $@
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+distclean-libtool:
+ -rm -f libtool
+uninstall-info-am:
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @set fnord $$MAKEFLAGS; amf=$$2; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+ @set fnord $$MAKEFLAGS; amf=$$2; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ETAGS = etags
+ETAGSFLAGS =
+
+CTAGS = ctags
+CTAGSFLAGS =
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ mkid -fID $$unique
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ if (etags --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ else \
+ include_option=--include; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test -f $$subdir/TAGS && \
+ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(ETAGS_ARGS)$$tags$$unique" \
+ || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique
+
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+
+top_distdir = .
+distdir = $(PACKAGE)-$(VERSION)
+
+am__remove_distdir = \
+ { test ! -d $(distdir) \
+ || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
+ && rm -fr $(distdir); }; }
+
+GZIP_ENV = --best
+distuninstallcheck_listfiles = find . -type f -print
+distcleancheck_listfiles = find . -type f -print
+
+distdir: $(DISTFILES)
+ $(am__remove_distdir)
+ mkdir $(distdir)
+ $(mkinstalldirs) $(distdir)/bdb $(distdir)/include
+ @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+ list='$(DISTFILES)'; for file in $$list; do \
+ case $$file in \
+ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+ esac; \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+ dir="/$$dir"; \
+ $(mkinstalldirs) "$(distdir)$$dir"; \
+ else \
+ dir=''; \
+ fi; \
+ if test -d $$d/$$file; then \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ else \
+ test -f $(distdir)/$$file \
+ || cp -p $$d/$$file $(distdir)/$$file \
+ || exit 1; \
+ fi; \
+ done
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test -d $(distdir)/$$subdir \
+ || mkdir $(distdir)/$$subdir \
+ || exit 1; \
+ (cd $$subdir && \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$(top_distdir)" \
+ distdir=../$(distdir)/$$subdir \
+ distdir) \
+ || exit 1; \
+ fi; \
+ done
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$(top_distdir)" distdir="$(distdir)" \
+ dist-hook
+ -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
+ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
+ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
+ ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
+ || chmod -R a+r $(distdir)
+dist-gzip: distdir
+ $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ $(am__remove_distdir)
+
+dist dist-all: distdir
+ $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ $(am__remove_distdir)
+
+# This target untars the dist file and tries a VPATH configuration. Then
+# it guarantees that the distribution is self-contained by making another
+# tarfile.
+distcheck: dist
+ $(am__remove_distdir)
+ GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf -
+ chmod -R a-w $(distdir); chmod a+w $(distdir)
+ mkdir $(distdir)/_build
+ mkdir $(distdir)/_inst
+ chmod a-w $(distdir)
+ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
+ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
+ && cd $(distdir)/_build \
+ && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+ $(DISTCHECK_CONFIGURE_FLAGS) \
+ && $(MAKE) $(AM_MAKEFLAGS) \
+ && $(MAKE) $(AM_MAKEFLAGS) dvi \
+ && $(MAKE) $(AM_MAKEFLAGS) check \
+ && $(MAKE) $(AM_MAKEFLAGS) install \
+ && $(MAKE) $(AM_MAKEFLAGS) installcheck \
+ && $(MAKE) $(AM_MAKEFLAGS) uninstall \
+ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
+ distuninstallcheck \
+ && chmod -R a-w "$$dc_install_base" \
+ && ({ \
+ (cd ../.. && $(mkinstalldirs) "$$dc_destdir") \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
+ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
+ } || { rm -rf "$$dc_destdir"; exit 1; }) \
+ && rm -rf "$$dc_destdir" \
+ && $(MAKE) $(AM_MAKEFLAGS) dist-gzip \
+ && rm -f $(distdir).tar.gz \
+ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
+ $(am__remove_distdir)
+ @echo "$(distdir).tar.gz is ready for distribution" | \
+ sed 'h;s/./=/g;p;x;p;x'
+distuninstallcheck:
+ @cd $(distuninstallcheck_dir) \
+ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
+ || { echo "ERROR: files left after uninstall:" ; \
+ if test -n "$(DESTDIR)"; then \
+ echo " (check DESTDIR support)"; \
+ fi ; \
+ $(distuninstallcheck_listfiles) ; \
+ exit 1; } >&2
+distcleancheck: distclean
+ @if test '$(srcdir)' = . ; then \
+ echo "ERROR: distcleancheck can only run from a VPATH build" ; \
+ exit 1 ; \
+ fi
+ @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
+ || { echo "ERROR: files left in build directory after distclean:" ; \
+ $(distcleancheck_listfiles) ; \
+ exit 1; } >&2
+check-am: all-am
+check: check-recursive
+all-am: Makefile config.h
+installdirs: installdirs-recursive
+installdirs-am:
+
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-hdr distclean-libtool \
+ distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ -rm -rf $(top_srcdir)/autom4te.cache
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
+ clean-generic clean-libtool clean-recursive ctags \
+ ctags-recursive dist dist-all dist-gzip distcheck distclean \
+ distclean-generic distclean-hdr distclean-libtool \
+ distclean-recursive distclean-tags distcleancheck distdir \
+ distuninstallcheck dvi dvi-am dvi-recursive info info-am \
+ info-recursive install install-am install-data install-data-am \
+ install-data-recursive install-exec install-exec-am \
+ install-exec-recursive install-info install-info-am \
+ install-info-recursive install-man install-recursive \
+ install-strip installcheck installcheck-am installdirs \
+ installdirs-am installdirs-recursive maintainer-clean \
+ maintainer-clean-generic maintainer-clean-recursive mostlyclean \
+ mostlyclean-generic mostlyclean-libtool mostlyclean-recursive \
+ pdf pdf-am pdf-recursive ps ps-am ps-recursive tags \
+ tags-recursive uninstall uninstall-am uninstall-info-am \
+ uninstall-info-recursive uninstall-recursive
+
+
+# This is just so that the linking is done early.
+config.h: $(linked_sources)
+
+linked_include_sources:
+ cd include; $(MAKE) link_sources
+ echo timestamp > linked_include_sources
+
+linked_client_sources: @linked_client_targets@
+ cd client; $(MAKE) link_sources
+ echo timestamp > linked_client_sources
+
+linked_libmysql_sources:
+ cd libmysql; $(MAKE) link_sources
+ echo timestamp > linked_libmysql_sources
+
+linked_libmysql_r_sources: linked_libmysql_sources
+ cd libmysql_r; $(MAKE) link_sources
+ echo timestamp > linked_libmysql_r_sources
+
+linked_libmysqld_sources:
+ cd libmysqld; $(MAKE) link_sources
+ echo timestamp > linked_libmysqld_sources
+
+linked_libmysqldex_sources:
+ cd libmysqld/examples; $(MAKE) link_sources
+ echo timestamp > linked_libmysqldex_sources
+
+linked_netware_sources:
+ cd @netware_dir@; $(MAKE) link_sources
+ echo timestamp > linked_netware_sources
+
+#avoid recursive make calls in sql directory
+linked_server_sources:
+ cd sql; rm -f mini_client_errors.c;@LN_CP_F@ ../libmysql/errmsg.c mini_client_errors.c
+ echo timestamp > linked_server_sources
+
+# Create permission databases
+init-db: all
+ $(top_builddir)/scripts/mysql_install_db
+
+bin-dist: all
+ $(top_builddir)/scripts/make_binary_distribution @MAKE_BINARY_DISTRIBUTION_OPTIONS@
+
+# Remove BK's "SCCS" subdirectories from source distribution
+dist-hook:
+ rm -rf `find $(distdir) -type d -name SCCS`
+
+tags:
+ support-files/build-tags
+.PHONY: init-db bin-dist
+
+# Test installation
+
+test:
+ cd mysql-test ; ./mysql-test-run
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:

View file

@ -0,0 +1,18 @@
#! /bin/sh /usr/share/dpatch/dpatch-run
## 02_no_builtin_ndbcluster_plugin.dpatch by <ch@debian.org>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: As we completely disabled ndbcluster
@DPATCH@
--- old/sql/sql_builtin.cc
+++ new/sql/sql_builtin.cc
@@ -22,6 +22,6 @@
struct st_mysql_plugin *mysqld_builtins[]=
{
- builtin_binlog_plugin, builtin_partition_plugin, builtin_csv_plugin, builtin_heap_plugin, builtin_myisam_plugin, builtin_myisammrg_plugin, builtin_ndbcluster_plugin,(struct st_mysql_plugin *)0
+ builtin_binlog_plugin, builtin_partition_plugin, builtin_csv_plugin, builtin_heap_plugin, builtin_myisam_plugin, builtin_myisammrg_plugin, (struct st_mysql_plugin *)0
};

View file

@ -0,0 +1,33 @@
#! /bin/sh /usr/share/dpatch/dpatch-run
## 35_init__openquery_configtest.dpatch by <me@cafuego.net>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: init__openquery_configtest.dpatch
@DPATCH@
--- old/debian/mysql-server-5.0.mysql.init.orig 2008-12-19 12:03:30.379898336 +1100
+++ new/debian/mysql-server-5.0.mysql.init 2008-12-19 12:04:46.660451093 +1100
@@ -182,8 +182,21 @@
fi
;;
+ 'configtest')
+ log_daemon_msg "Testing MySQL configuration" "syntax"
+ set +e
+ help_out=`/usr/sbin/mysqld --help 2>&1`; r=$?
+ set -e
+ if [ "$r" -ne 0 ]; then
+ log_failure_msg "$help_out"
+ log_failure_msg "There are syntax errors in the server configuration. Please fix them!"
+ fi
+ log_end_msg $r
+ exit $r
+ ;;
+
*)
- echo "Usage: $SELF start|stop|restart|reload|force-reload|status"
+ echo "Usage: $SELF start|stop|restart|reload|force-reload|status|configtest"
exit 1
;;
esac

Some files were not shown because too many files have changed in this diff Show more