Enable ndbcluster support, fix a couple of small issues
This commit is contained in:
parent
20564e52c0
commit
e9e34fccd8
15
my.cnf
15
my.cnf
@ -6,6 +6,21 @@ user=mysql
|
|||||||
# clients (those using the mysqlclient10 compatibility package).
|
# clients (those using the mysqlclient10 compatibility package).
|
||||||
old_passwords=1
|
old_passwords=1
|
||||||
|
|
||||||
|
# To allow mysqld to connect to a MySQL Cluster management daemon, uncomment
|
||||||
|
# these lines and adjust the connectstring as needed.
|
||||||
|
#ndbcluster
|
||||||
|
#ndb-connectstring="nodeid=4;host=localhost:1186"
|
||||||
|
|
||||||
[mysqld_safe]
|
[mysqld_safe]
|
||||||
log-error=/var/log/mysqld.log
|
log-error=/var/log/mysqld.log
|
||||||
pid-file=/var/run/mysqld/mysqld.pid
|
pid-file=/var/run/mysqld/mysqld.pid
|
||||||
|
|
||||||
|
[ndbd]
|
||||||
|
# If you are running a MySQL Cluster storage daemon (ndbd) on this machine,
|
||||||
|
# adjust its connection to the management daemon here.
|
||||||
|
# Note: ndbd init script requires this to include nodeid!
|
||||||
|
connect-string="nodeid=2;host=localhost:1186"
|
||||||
|
|
||||||
|
[ndb_mgm]
|
||||||
|
# connection string for MySQL Cluster management tool
|
||||||
|
connect-string="host=localhost:1186"
|
||||||
|
@ -7,7 +7,7 @@ This patch also improves the documentation a tad.
|
|||||||
diff -Naur mysql-5.0.40.orig/mysql-test/README mysql-5.0.40/mysql-test/README
|
diff -Naur mysql-5.0.40.orig/mysql-test/README mysql-5.0.40/mysql-test/README
|
||||||
--- mysql-5.0.40.orig/mysql-test/README 2007-04-20 10:14:42.000000000 -0400
|
--- mysql-5.0.40.orig/mysql-test/README 2007-04-20 10:14:42.000000000 -0400
|
||||||
+++ mysql-5.0.40/mysql-test/README 2007-05-23 14:41:03.000000000 -0400
|
+++ mysql-5.0.40/mysql-test/README 2007-05-23 14:41:03.000000000 -0400
|
||||||
@@ -6,6 +6,14 @@
|
@@ -6,6 +6,17 @@
|
||||||
actually have a co-existing MySQL installation. The tests will not
|
actually have a co-existing MySQL installation. The tests will not
|
||||||
conflict with it.
|
conflict with it.
|
||||||
|
|
||||||
@ -17,12 +17,15 @@ diff -Naur mysql-5.0.40.orig/mysql-test/README mysql-5.0.40/mysql-test/README
|
|||||||
+ sudo -u mysql ./mysql-test-run
|
+ sudo -u mysql ./mysql-test-run
|
||||||
+This will use the installed mysql executables, but will run a private copy
|
+This will use the installed mysql executables, but will run a private copy
|
||||||
+of the server process (using data files within /usr/share/mysql-test),
|
+of the server process (using data files within /usr/share/mysql-test),
|
||||||
+so you need not start the mysqld service beforehand.
|
+so you need not start the mysqld service beforehand. If you have not
|
||||||
|
+installed mysql-cluster, use
|
||||||
|
+ sudo -u mysql ./mysql-test-run --skip-ndbcluster
|
||||||
|
+to skip the cluster-related tests.
|
||||||
+
|
+
|
||||||
All tests must pass. If one or more of them fail on your system, please
|
All tests must pass. If one or more of them fail on your system, please
|
||||||
read the following manual section for instructions on how to report the
|
read the following manual section for instructions on how to report the
|
||||||
problem:
|
problem:
|
||||||
@@ -25,7 +33,8 @@
|
@@ -25,7 +36,8 @@
|
||||||
|
|
||||||
With no test cases named on the command line, mysql-test-run falls back
|
With no test cases named on the command line, mysql-test-run falls back
|
||||||
to the normal "non-extern" behavior. The reason for this is that some
|
to the normal "non-extern" behavior. The reason for this is that some
|
||||||
|
17
mysql-no-dbug.patch
Normal file
17
mysql-no-dbug.patch
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
Don't build the dbug manual. We aren't going to install it anyway, so
|
||||||
|
there's no need to do so. Attempting to build it causes crashes if one
|
||||||
|
has built with -DDBUG_OFF, as we do by default. Per bug #437053.
|
||||||
|
|
||||||
|
|
||||||
|
diff -Naur mysql-5.0.51a.orig/dbug/Makefile.am mysql-5.0.51a/dbug/Makefile.am
|
||||||
|
--- mysql-5.0.51a.orig/dbug/Makefile.am 2008-01-11 09:43:29.000000000 -0500
|
||||||
|
+++ mysql-5.0.51a/dbug/Makefile.am 2008-07-27 12:21:56.000000000 -0400
|
||||||
|
@@ -35,7 +35,7 @@
|
||||||
|
factorial_SOURCES = my_main.c factorial.c
|
||||||
|
dbug_analyze_SOURCES = dbug_analyze.c
|
||||||
|
|
||||||
|
-all: user.t user.ps
|
||||||
|
+all:
|
||||||
|
|
||||||
|
user.t: user.r $(NROFF_INC)
|
||||||
|
-nroff -mm user.r > $@
|
@ -46,7 +46,7 @@ start(){
|
|||||||
chmod 0640 "$errlogfile"
|
chmod 0640 "$errlogfile"
|
||||||
[ -x /sbin/restorecon ] && /sbin/restorecon "$errlogfile"
|
[ -x /sbin/restorecon ] && /sbin/restorecon "$errlogfile"
|
||||||
if [ ! -d "$datadir/mysql" ] ; then
|
if [ ! -d "$datadir/mysql" ] ; then
|
||||||
action $"Initializing MySQL database: " /usr/bin/mysql_install_db
|
action $"Initializing MySQL database: " /usr/bin/mysql_install_db --datadir="$datadir" --user=mysql
|
||||||
ret=$?
|
ret=$?
|
||||||
chown -R mysql:mysql "$datadir"
|
chown -R mysql:mysql "$datadir"
|
||||||
if [ $ret -ne 0 ] ; then
|
if [ $ret -ne 0 ] ; then
|
||||||
@ -60,7 +60,7 @@ start(){
|
|||||||
# but we need to be sure.
|
# but we need to be sure.
|
||||||
/usr/bin/mysqld_safe --datadir="$datadir" --socket="$socketfile" \
|
/usr/bin/mysqld_safe --datadir="$datadir" --socket="$socketfile" \
|
||||||
--log-error="$errlogfile" --pid-file="$mypidfile" \
|
--log-error="$errlogfile" --pid-file="$mypidfile" \
|
||||||
>/dev/null 2>&1 &
|
--user=mysql >/dev/null 2>&1 &
|
||||||
ret=$?
|
ret=$?
|
||||||
# Spin for a maximum of N seconds waiting for the server to come up.
|
# Spin for a maximum of N seconds waiting for the server to come up.
|
||||||
# Rather than assuming we know a valid username, accept an "access
|
# Rather than assuming we know a valid username, accept an "access
|
||||||
|
126
mysql.spec
126
mysql.spec
@ -1,6 +1,6 @@
|
|||||||
Name: mysql
|
Name: mysql
|
||||||
Version: 5.0.51a
|
Version: 5.0.51a
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
Summary: MySQL client programs and shared libraries
|
Summary: MySQL client programs and shared libraries
|
||||||
Group: Applications/Databases
|
Group: Applications/Databases
|
||||||
URL: http://www.mysql.com
|
URL: http://www.mysql.com
|
||||||
@ -16,6 +16,9 @@ Source1: mysql.init
|
|||||||
Source3: my.cnf
|
Source3: my.cnf
|
||||||
Source4: scriptstub.c
|
Source4: scriptstub.c
|
||||||
Source5: my_config.h
|
Source5: my_config.h
|
||||||
|
Source6: ndbd.init
|
||||||
|
Source7: ndb_mgmd.init
|
||||||
|
Source8: ndb_types.h
|
||||||
# Working around perl dependency checking bug in rpm FTTB. Remove later.
|
# Working around perl dependency checking bug in rpm FTTB. Remove later.
|
||||||
Source999: filter-requires-mysql.sh
|
Source999: filter-requires-mysql.sh
|
||||||
Patch1: mysql-libdir.patch
|
Patch1: mysql-libdir.patch
|
||||||
@ -30,6 +33,7 @@ Patch9: mysql-bdb-link.patch
|
|||||||
Patch10: mysql-bdb-open.patch
|
Patch10: mysql-bdb-open.patch
|
||||||
Patch11: mysql-innodb-crash.patch
|
Patch11: mysql-innodb-crash.patch
|
||||||
Patch12: mysql-ssl.patch
|
Patch12: mysql-ssl.patch
|
||||||
|
Patch13: mysql-no-dbug.patch
|
||||||
Patch14: mysql-ss-test.patch
|
Patch14: mysql-ss-test.patch
|
||||||
Patch15: mysql-stack-guard.patch
|
Patch15: mysql-stack-guard.patch
|
||||||
|
|
||||||
@ -86,6 +90,22 @@ client/server implementation consisting of a server daemon (mysqld)
|
|||||||
and many different client programs and libraries. This package contains
|
and many different client programs and libraries. This package contains
|
||||||
the MySQL server and some accompanying files and directories.
|
the MySQL server and some accompanying files and directories.
|
||||||
|
|
||||||
|
%package cluster
|
||||||
|
|
||||||
|
Summary: MySQL Cluster daemons and related files
|
||||||
|
Group: Applications/Databases
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
Conflicts: MySQL-storage-cluster
|
||||||
|
Conflicts: MySQL-management-cluster
|
||||||
|
Conflicts: MySQL-tools-cluster
|
||||||
|
Conflicts: MySQL-extra-cluster
|
||||||
|
|
||||||
|
%description cluster
|
||||||
|
MySQL is a multi-user, multi-threaded SQL database server.
|
||||||
|
MySQL Cluster is a distributed in-memory data store that can be accessed
|
||||||
|
by a MySQL server. This package contains the programs needed to run a MySQL
|
||||||
|
Cluster installation.
|
||||||
|
|
||||||
%package devel
|
%package devel
|
||||||
|
|
||||||
Summary: Files for development of MySQL applications
|
Summary: Files for development of MySQL applications
|
||||||
@ -139,6 +159,7 @@ the MySQL sources.
|
|||||||
%patch10 -p1
|
%patch10 -p1
|
||||||
%patch11 -p1
|
%patch11 -p1
|
||||||
%patch12 -p1
|
%patch12 -p1
|
||||||
|
%patch13 -p1
|
||||||
%patch14 -p1
|
%patch14 -p1
|
||||||
%patch15 -p1
|
%patch15 -p1
|
||||||
|
|
||||||
@ -172,6 +193,7 @@ export CFLAGS CXXFLAGS
|
|||||||
--with-mysqld-user="mysql" \
|
--with-mysqld-user="mysql" \
|
||||||
--with-extra-charsets=all \
|
--with-extra-charsets=all \
|
||||||
--with-innodb \
|
--with-innodb \
|
||||||
|
--with-ndbcluster \
|
||||||
--with-berkeley-db \
|
--with-berkeley-db \
|
||||||
--enable-local-infile \
|
--enable-local-infile \
|
||||||
--enable-largefile \
|
--enable-largefile \
|
||||||
@ -206,12 +228,14 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
|
|
||||||
%makeinstall
|
%makeinstall
|
||||||
|
|
||||||
# multilib header hack
|
# multilib header hacks
|
||||||
# we only apply this to known Red Hat multilib arches, per bug #181335
|
# we only apply this to known Red Hat multilib arches, per bug #181335
|
||||||
case `uname -i` in
|
case `uname -i` in
|
||||||
i386 | x86_64 | ppc | ppc64 | s390 | s390x | sparc | sparcv9 | sparc64 )
|
i386 | x86_64 | ppc | ppc64 | s390 | s390x | sparc | sparcv9 | sparc64 )
|
||||||
install -m 644 include/my_config.h $RPM_BUILD_ROOT/usr/include/mysql/my_config_`uname -i`.h
|
mv $RPM_BUILD_ROOT/usr/include/mysql/my_config.h $RPM_BUILD_ROOT/usr/include/mysql/my_config_`uname -i`.h
|
||||||
install -m 644 %{SOURCE5} $RPM_BUILD_ROOT/usr/include/mysql/
|
install -m 644 %{SOURCE5} $RPM_BUILD_ROOT/usr/include/mysql/
|
||||||
|
mv $RPM_BUILD_ROOT/usr/include/mysql/ndb/ndb_types.h $RPM_BUILD_ROOT/usr/include/mysql/ndb/ndb_types_`uname -i`.h
|
||||||
|
install -m 644 %{SOURCE8} $RPM_BUILD_ROOT/usr/include/mysql/ndb/
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
;;
|
;;
|
||||||
@ -228,8 +252,11 @@ gzip ${RPM_BUILD_ROOT}%{_infodir}/*
|
|||||||
mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d
|
mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d
|
||||||
mkdir -p $RPM_BUILD_ROOT/var/run/mysqld
|
mkdir -p $RPM_BUILD_ROOT/var/run/mysqld
|
||||||
install -m 0755 -d $RPM_BUILD_ROOT/var/lib/mysql
|
install -m 0755 -d $RPM_BUILD_ROOT/var/lib/mysql
|
||||||
|
install -m 0755 -d $RPM_BUILD_ROOT/var/lib/mysql-cluster
|
||||||
install -m 0755 %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysqld
|
install -m 0755 %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/mysqld
|
||||||
install -m 0644 %{SOURCE3} $RPM_BUILD_ROOT/etc/my.cnf
|
install -m 0644 %{SOURCE3} $RPM_BUILD_ROOT/etc/my.cnf
|
||||||
|
install -m 0755 %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/ndbd
|
||||||
|
install -m 0755 %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/ndb_mgmd
|
||||||
rm -f $RPM_BUILD_ROOT/%{_infodir}/dir*
|
rm -f $RPM_BUILD_ROOT/%{_infodir}/dir*
|
||||||
mv $RPM_BUILD_ROOT/usr/sql-bench $RPM_BUILD_ROOT%{_datadir}/sql-bench
|
mv $RPM_BUILD_ROOT/usr/sql-bench $RPM_BUILD_ROOT%{_datadir}/sql-bench
|
||||||
mv $RPM_BUILD_ROOT/usr/mysql-test $RPM_BUILD_ROOT%{_datadir}/mysql-test
|
mv $RPM_BUILD_ROOT/usr/mysql-test $RPM_BUILD_ROOT%{_datadir}/mysql-test
|
||||||
@ -246,11 +273,11 @@ rm -f ${RPM_BUILD_ROOT}%{_bindir}/make_win_src_distribution
|
|||||||
rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/make_win_bin_dist.1*
|
rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/make_win_bin_dist.1*
|
||||||
rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/make_win_src_distribution.1*
|
rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/make_win_src_distribution.1*
|
||||||
rm -f ${RPM_BUILD_ROOT}%{_libdir}/mysql/libmysqlclient*.la
|
rm -f ${RPM_BUILD_ROOT}%{_libdir}/mysql/libmysqlclient*.la
|
||||||
|
rm -f ${RPM_BUILD_ROOT}%{_libdir}/mysql/libndbclient.la
|
||||||
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/binary-configure
|
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/binary-configure
|
||||||
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/make_binary_distribution
|
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/make_binary_distribution
|
||||||
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/make_sharedlib_distribution
|
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/make_sharedlib_distribution
|
||||||
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/mi_test_all*
|
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/mi_test_all*
|
||||||
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/ndb-config-2-node.ini
|
|
||||||
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/mysql.server
|
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/mysql.server
|
||||||
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/mysqld_multi.server
|
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/mysqld_multi.server
|
||||||
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/MySQL-shared-compat.spec
|
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/MySQL-shared-compat.spec
|
||||||
@ -261,8 +288,12 @@ rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/mysql-*.spec
|
|||||||
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/mysql-log-rotate
|
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/mysql-log-rotate
|
||||||
rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/mysql-stress-test.pl.1*
|
rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/mysql-stress-test.pl.1*
|
||||||
rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/mysql-test-run.pl.1*
|
rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/mysql-test-run.pl.1*
|
||||||
rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/ndbd.1*
|
rm -f ${RPM_BUILD_ROOT}/usr/libexec/ndb_cpcd
|
||||||
rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/ndb_*.1*
|
rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/ndb_cpcd.1*
|
||||||
|
# for the moment, remove ndb_size because of dependency on HTML::Template
|
||||||
|
rm -f ${RPM_BUILD_ROOT}%{_bindir}/ndb_size.pl
|
||||||
|
rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/ndb_size.pl.1*
|
||||||
|
rm -f ${RPM_BUILD_ROOT}%{_datadir}/mysql/ndb_size.tmpl
|
||||||
|
|
||||||
mkdir -p $RPM_BUILD_ROOT/etc/ld.so.conf.d
|
mkdir -p $RPM_BUILD_ROOT/etc/ld.so.conf.d
|
||||||
echo "%{_libdir}/mysql" > $RPM_BUILD_ROOT/etc/ld.so.conf.d/%{name}-%{_arch}.conf
|
echo "%{_libdir}/mysql" > $RPM_BUILD_ROOT/etc/ld.so.conf.d/%{name}-%{_arch}.conf
|
||||||
@ -274,6 +305,10 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
/usr/sbin/useradd -M -o -r -d /var/lib/mysql -s /bin/bash \
|
/usr/sbin/useradd -M -o -r -d /var/lib/mysql -s /bin/bash \
|
||||||
-c "MySQL Server" -u 27 mysql > /dev/null 2>&1 || :
|
-c "MySQL Server" -u 27 mysql > /dev/null 2>&1 || :
|
||||||
|
|
||||||
|
%pre cluster
|
||||||
|
/usr/sbin/useradd -M -o -r -d /var/lib/mysql -s /bin/bash \
|
||||||
|
-c "MySQL Server" -u 27 mysql > /dev/null 2>&1 || :
|
||||||
|
|
||||||
%post
|
%post
|
||||||
/sbin/install-info %{_infodir}/mysql.info.gz %{_infodir}/dir
|
/sbin/install-info %{_infodir}/mysql.info.gz %{_infodir}/dir
|
||||||
|
|
||||||
@ -287,6 +322,13 @@ fi
|
|||||||
/bin/chmod 0755 /var/lib/mysql
|
/bin/chmod 0755 /var/lib/mysql
|
||||||
/bin/touch /var/log/mysqld.log
|
/bin/touch /var/log/mysqld.log
|
||||||
|
|
||||||
|
%post cluster
|
||||||
|
if [ $1 = 1 ]; then
|
||||||
|
/sbin/chkconfig --add ndbd
|
||||||
|
/sbin/chkconfig --add ndb_mgmd
|
||||||
|
fi
|
||||||
|
/bin/chmod 0755 /var/lib/mysql-cluster
|
||||||
|
|
||||||
%preun
|
%preun
|
||||||
if [ $1 = 0 ]; then
|
if [ $1 = 0 ]; then
|
||||||
/sbin/install-info --delete %{_infodir}/mysql.info.gz %{_infodir}/dir || :
|
/sbin/install-info --delete %{_infodir}/mysql.info.gz %{_infodir}/dir || :
|
||||||
@ -297,6 +339,12 @@ if [ $1 = 0 ]; then
|
|||||||
/sbin/chkconfig --del mysqld
|
/sbin/chkconfig --del mysqld
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
%preun cluster
|
||||||
|
if [ $1 = 0 ]; then
|
||||||
|
/sbin/chkconfig --del ndb_mgmd
|
||||||
|
/sbin/chkconfig --del ndbd
|
||||||
|
fi
|
||||||
|
|
||||||
%postun libs
|
%postun libs
|
||||||
if [ $1 = 0 ] ; then
|
if [ $1 = 0 ] ; then
|
||||||
/sbin/ldconfig
|
/sbin/ldconfig
|
||||||
@ -308,6 +356,12 @@ if [ $1 -ge 1 ]; then
|
|||||||
/sbin/service mysqld condrestart >/dev/null 2>&1 || :
|
/sbin/service mysqld condrestart >/dev/null 2>&1 || :
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
%postun cluster
|
||||||
|
if [ $1 -ge 1 ]; then
|
||||||
|
/sbin/service ndb_mgmd condrestart >/dev/null 2>&1 || :
|
||||||
|
/sbin/service ndbd condrestart >/dev/null 2>&1 || :
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
@ -331,7 +385,6 @@ fi
|
|||||||
%{_infodir}/*
|
%{_infodir}/*
|
||||||
|
|
||||||
%{_mandir}/man1/mysql.1*
|
%{_mandir}/man1/mysql.1*
|
||||||
%{_mandir}/man1/mysql_config.1*
|
|
||||||
%{_mandir}/man1/mysql_find_rows.1*
|
%{_mandir}/man1/mysql_find_rows.1*
|
||||||
%{_mandir}/man1/mysql_tableinfo.1*
|
%{_mandir}/man1/mysql_tableinfo.1*
|
||||||
%{_mandir}/man1/mysql_waitpid.1*
|
%{_mandir}/man1/mysql_waitpid.1*
|
||||||
@ -353,6 +406,7 @@ fi
|
|||||||
|
|
||||||
%dir %{_libdir}/mysql
|
%dir %{_libdir}/mysql
|
||||||
%{_libdir}/mysql/libmysqlclient*.so.*
|
%{_libdir}/mysql/libmysqlclient*.so.*
|
||||||
|
%{_libdir}/mysql/libndbclient.so.*
|
||||||
/etc/ld.so.conf.d/*
|
/etc/ld.so.conf.d/*
|
||||||
|
|
||||||
%dir %{_datadir}/mysql
|
%dir %{_datadir}/mysql
|
||||||
@ -425,6 +479,7 @@ fi
|
|||||||
%{_mandir}/man1/mysql_convert_table_format.1*
|
%{_mandir}/man1/mysql_convert_table_format.1*
|
||||||
%{_mandir}/man1/myisam_ftdump.1*
|
%{_mandir}/man1/myisam_ftdump.1*
|
||||||
%{_mandir}/man1/mysql.server.1*
|
%{_mandir}/man1/mysql.server.1*
|
||||||
|
%{_mandir}/man1/mysql_config.1*
|
||||||
%{_mandir}/man1/mysql_explain_log.1*
|
%{_mandir}/man1/mysql_explain_log.1*
|
||||||
%{_mandir}/man1/mysql_fix_extensions.1*
|
%{_mandir}/man1/mysql_fix_extensions.1*
|
||||||
%{_mandir}/man1/mysql_fix_privilege_tables.1*
|
%{_mandir}/man1/mysql_fix_privilege_tables.1*
|
||||||
@ -465,11 +520,58 @@ fi
|
|||||||
%attr(0755,mysql,mysql) %dir /var/lib/mysql
|
%attr(0755,mysql,mysql) %dir /var/lib/mysql
|
||||||
%attr(0640,mysql,mysql) %config(noreplace) %verify(not md5 size mtime) /var/log/mysqld.log
|
%attr(0640,mysql,mysql) %config(noreplace) %verify(not md5 size mtime) /var/log/mysqld.log
|
||||||
|
|
||||||
|
%files cluster
|
||||||
|
%defattr(-,root,root)
|
||||||
|
|
||||||
|
%{_bindir}/ndb_config
|
||||||
|
%{_bindir}/ndb_delete_all
|
||||||
|
%{_bindir}/ndb_desc
|
||||||
|
%{_bindir}/ndb_drop_index
|
||||||
|
%{_bindir}/ndb_drop_table
|
||||||
|
%{_bindir}/ndb_error_reporter
|
||||||
|
%{_bindir}/ndb_mgm
|
||||||
|
%{_bindir}/ndb_restore
|
||||||
|
%{_bindir}/ndb_select_all
|
||||||
|
%{_bindir}/ndb_select_count
|
||||||
|
%{_bindir}/ndb_show_tables
|
||||||
|
#%{_bindir}/ndb_size.pl
|
||||||
|
%{_bindir}/ndb_test_platform
|
||||||
|
%{_bindir}/ndb_waiter
|
||||||
|
|
||||||
|
/usr/libexec/ndb_mgmd
|
||||||
|
/usr/libexec/ndbd
|
||||||
|
|
||||||
|
%{_datadir}/mysql/ndb-*.ini
|
||||||
|
#%{_datadir}/mysql/ndb_size.tmpl
|
||||||
|
/etc/rc.d/init.d/ndbd
|
||||||
|
/etc/rc.d/init.d/ndb_mgmd
|
||||||
|
%attr(0755,mysql,mysql) %dir /var/lib/mysql-cluster
|
||||||
|
|
||||||
|
%{_mandir}/man1/ndb_config.1*
|
||||||
|
%{_mandir}/man1/ndb_delete_all.1*
|
||||||
|
%{_mandir}/man1/ndb_desc.1*
|
||||||
|
%{_mandir}/man1/ndb_drop_index.1*
|
||||||
|
%{_mandir}/man1/ndb_drop_table.1*
|
||||||
|
%{_mandir}/man1/ndb_error_reporter.1*
|
||||||
|
%{_mandir}/man1/ndb_mgm.1*
|
||||||
|
%{_mandir}/man1/ndb_mgmd.1*
|
||||||
|
%{_mandir}/man1/ndb_print_backup_file.1*
|
||||||
|
%{_mandir}/man1/ndb_print_schema_file.1*
|
||||||
|
%{_mandir}/man1/ndb_print_sys_file.1*
|
||||||
|
%{_mandir}/man1/ndb_restore.1*
|
||||||
|
%{_mandir}/man1/ndb_select_all.1*
|
||||||
|
%{_mandir}/man1/ndb_select_count.1*
|
||||||
|
%{_mandir}/man1/ndb_show_tables.1*
|
||||||
|
#%{_mandir}/man1/ndb_size.pl.1*
|
||||||
|
%{_mandir}/man1/ndb_waiter.1*
|
||||||
|
%{_mandir}/man1/ndbd.1*
|
||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
/usr/include/mysql
|
/usr/include/mysql
|
||||||
%{_libdir}/mysql/*.a
|
%{_libdir}/mysql/*.a
|
||||||
%{_libdir}/mysql/libmysqlclient*.so
|
%{_libdir}/mysql/libmysqlclient*.so
|
||||||
|
%{_libdir}/mysql/libndbclient.so
|
||||||
|
|
||||||
%files bench
|
%files bench
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
@ -483,6 +585,16 @@ fi
|
|||||||
%{_mandir}/man1/mysql_client_test.1*
|
%{_mandir}/man1/mysql_client_test.1*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sun Jul 27 2008 Tom Lane <tgl@redhat.com> 5.0.51a-2
|
||||||
|
- Enable ndbcluster support
|
||||||
|
Resolves: #163758
|
||||||
|
- Suppress odd crash messages during package build, caused by trying to
|
||||||
|
build dbug manual (which we don't install anyway) with dbug disabled
|
||||||
|
Resolves: #437053
|
||||||
|
- Improve mysql.init to pass configured datadir to mysql_install_db,
|
||||||
|
and to force user=mysql for both mysql_install_db and mysqld_safe.
|
||||||
|
Related: #450178
|
||||||
|
|
||||||
* Mon Mar 3 2008 Tom Lane <tgl@redhat.com> 5.0.51a-1
|
* Mon Mar 3 2008 Tom Lane <tgl@redhat.com> 5.0.51a-1
|
||||||
- Update to mysql version 5.0.51a
|
- Update to mysql version 5.0.51a
|
||||||
|
|
||||||
|
116
ndb_mgmd.init
Normal file
116
ndb_mgmd.init
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# ndb_mgmd This shell script takes care of starting and stopping
|
||||||
|
# the MySQL Cluster management daemon (ndb_mgmd).
|
||||||
|
#
|
||||||
|
# chkconfig: - 62 38
|
||||||
|
# description: MySQL Cluster management daemon.
|
||||||
|
# processname: ndb_mgmd
|
||||||
|
# config: /var/lib/mysql-cluster/config.ini
|
||||||
|
# pidfile: /var/lib/mysql-cluster/ndb_${node_id}.pid
|
||||||
|
|
||||||
|
# Source function library.
|
||||||
|
. /etc/rc.d/init.d/functions
|
||||||
|
|
||||||
|
# Source networking configuration.
|
||||||
|
. /etc/sysconfig/network
|
||||||
|
|
||||||
|
|
||||||
|
prog="ndb_mgmd"
|
||||||
|
|
||||||
|
# extract value of a MySQL option from config files
|
||||||
|
# Usage: get_mysql_option SECTION VARNAME DEFAULT
|
||||||
|
# result is returned in $result
|
||||||
|
# We use my_print_defaults which prints all options from multiple files,
|
||||||
|
# with the more specific ones later; hence take the last match.
|
||||||
|
get_mysql_option(){
|
||||||
|
result=`/usr/bin/my_print_defaults --extra-file=/var/lib/mysql-cluster/config.ini "$1" | sed -n "s/^--$2=//p" | tail -n 1`
|
||||||
|
if [ -z "$result" ]; then
|
||||||
|
# not found, use default
|
||||||
|
result="$3"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
get_mysql_option ndb_mgmd id "1"
|
||||||
|
node_id="$result"
|
||||||
|
errlogfile="/var/lib/mysql-cluster/ndb_${node_id}_out.log"
|
||||||
|
pidfile="/var/lib/mysql-cluster/ndb_${node_id}.pid"
|
||||||
|
|
||||||
|
# For SELinux we need to use 'runuser' not 'su'
|
||||||
|
if [ -x /sbin/runuser ]
|
||||||
|
then
|
||||||
|
SU=runuser
|
||||||
|
else
|
||||||
|
SU=su
|
||||||
|
fi
|
||||||
|
|
||||||
|
start(){
|
||||||
|
touch "$errlogfile"
|
||||||
|
chown mysql:mysql "$errlogfile"
|
||||||
|
chmod 0640 "$errlogfile"
|
||||||
|
[ -x /sbin/restorecon ] && /sbin/restorecon "$errlogfile"
|
||||||
|
|
||||||
|
# all options are expected to be specified in
|
||||||
|
# /var/lib/mysql-cluster/config.ini.
|
||||||
|
$SU -l mysql -c "cd /var/lib/mysql-cluster; /usr/libexec/ndb_mgmd" >> "$errlogfile" 2>&1 < /dev/null
|
||||||
|
ret=$?
|
||||||
|
if [ $ret -eq 0 ]; then
|
||||||
|
action $"Starting $prog: " /bin/true
|
||||||
|
else
|
||||||
|
action $"Starting $prog: " /bin/false
|
||||||
|
fi
|
||||||
|
[ $ret -eq 0 ] && touch /var/lock/subsys/ndb_mgmd
|
||||||
|
return $ret
|
||||||
|
}
|
||||||
|
|
||||||
|
stop(){
|
||||||
|
NDB_MGMD_PID=`cat "$pidfile" 2>/dev/null `
|
||||||
|
if [ -n "$NDB_MGMD_PID" ]; then
|
||||||
|
/usr/bin/ndb_mgm -e shutdown >/dev/null
|
||||||
|
ret=$?
|
||||||
|
if [ $ret -eq 0 ]; then
|
||||||
|
rm -f /var/lock/subsys/ndb_mgmd
|
||||||
|
rm -f "$pidfile"
|
||||||
|
action $"Stopping $prog: " /bin/true
|
||||||
|
else
|
||||||
|
action $"Stopping $prog: " /bin/false
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
ret=1
|
||||||
|
action $"Stopping $prog: " /bin/false
|
||||||
|
fi
|
||||||
|
return $ret
|
||||||
|
}
|
||||||
|
|
||||||
|
restart(){
|
||||||
|
stop
|
||||||
|
start
|
||||||
|
}
|
||||||
|
|
||||||
|
condrestart(){
|
||||||
|
[ -e /var/lock/subsys/ndb_mgmd ] && restart || :
|
||||||
|
}
|
||||||
|
|
||||||
|
# See how we were called.
|
||||||
|
case "$1" in
|
||||||
|
start)
|
||||||
|
start
|
||||||
|
;;
|
||||||
|
stop)
|
||||||
|
stop
|
||||||
|
;;
|
||||||
|
status)
|
||||||
|
status ndb_mgmd
|
||||||
|
;;
|
||||||
|
restart)
|
||||||
|
restart
|
||||||
|
;;
|
||||||
|
condrestart)
|
||||||
|
condrestart
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo $"Usage: $0 {start|stop|status|condrestart|restart}"
|
||||||
|
exit 1
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit $?
|
25
ndb_types.h
Normal file
25
ndb_types.h
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
/*
|
||||||
|
* Kluge to support multilib installation of both 32- and 64-bit RPMS:
|
||||||
|
* we need to arrange that header files that appear in both RPMs are
|
||||||
|
* identical. Hence, this file is architecture-independent and calls
|
||||||
|
* in an arch-dependent file that will appear in just one RPM.
|
||||||
|
*
|
||||||
|
* To avoid breaking arches not explicitly supported by Red Hat, we
|
||||||
|
* use this indirection file *only* on known multilib arches.
|
||||||
|
*
|
||||||
|
* Note: this may well fail if user tries to use gcc's -I- option.
|
||||||
|
* But that option is deprecated anyway.
|
||||||
|
*/
|
||||||
|
#if defined(__x86_64__)
|
||||||
|
#include "ndb_types_x86_64.h"
|
||||||
|
#elif defined(__i386__)
|
||||||
|
#include "ndb_types_i386.h"
|
||||||
|
#elif defined(__ppc64__) || defined(__powerpc64__)
|
||||||
|
#include "ndb_types_ppc64.h"
|
||||||
|
#elif defined(__ppc__) || defined(__powerpc__)
|
||||||
|
#include "ndb_types_ppc.h"
|
||||||
|
#elif defined(__s390x__)
|
||||||
|
#include "ndb_types_s390x.h"
|
||||||
|
#elif defined(__s390__)
|
||||||
|
#include "ndb_types_s390.h"
|
||||||
|
#endif
|
111
ndbd.init
Normal file
111
ndbd.init
Normal file
@ -0,0 +1,111 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# ndbd This shell script takes care of starting and stopping
|
||||||
|
# the MySQL Cluster data node daemon (ndbd).
|
||||||
|
#
|
||||||
|
# chkconfig: - 63 37
|
||||||
|
# description: MySQL Cluster data node daemon.
|
||||||
|
# processname: ndbd
|
||||||
|
# config: /etc/my.cnf
|
||||||
|
# pidfile: /var/lib/mysql-cluster/ndb_${node_id}.pid
|
||||||
|
|
||||||
|
# Source function library.
|
||||||
|
. /etc/rc.d/init.d/functions
|
||||||
|
|
||||||
|
# Source networking configuration.
|
||||||
|
. /etc/sysconfig/network
|
||||||
|
|
||||||
|
|
||||||
|
prog="ndbd"
|
||||||
|
|
||||||
|
# extract value of a MySQL option from config files
|
||||||
|
# Usage: get_mysql_option SECTION VARNAME DEFAULT
|
||||||
|
# result is returned in $result
|
||||||
|
# We use my_print_defaults which prints all options from multiple files,
|
||||||
|
# with the more specific ones later; hence take the last match.
|
||||||
|
get_mysql_option(){
|
||||||
|
result=`/usr/bin/my_print_defaults "$1" | sed -n "s/^--$2=//p" | tail -n 1`
|
||||||
|
if [ -z "$result" ]; then
|
||||||
|
# not found, use default
|
||||||
|
result="$3"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
get_mysql_option ndbd connect-string "nodeid=2;host=localhost:1186"
|
||||||
|
ndbd_connect_string="$result"
|
||||||
|
node_id=`echo "$result" | sed 's/^nodeid=\([0-9]*\);.*$/\1/'`
|
||||||
|
connect_string=`echo "$result" | sed 's/^.*host=//'`
|
||||||
|
pidfile="/var/lib/mysql-cluster/ndb_${node_id}.pid"
|
||||||
|
|
||||||
|
# For SELinux we need to use 'runuser' not 'su'
|
||||||
|
if [ -x /sbin/runuser ]
|
||||||
|
then
|
||||||
|
SU=runuser
|
||||||
|
else
|
||||||
|
SU=su
|
||||||
|
fi
|
||||||
|
|
||||||
|
start(){
|
||||||
|
# all options are expected to be specified in /etc/my.cnf
|
||||||
|
$SU -l mysql -c "/usr/libexec/ndbd" >/dev/null 2>&1
|
||||||
|
ret=$?
|
||||||
|
if [ $ret -eq 0 ]; then
|
||||||
|
action $"Starting $prog: " /bin/true
|
||||||
|
else
|
||||||
|
action $"Starting $prog: " /bin/false
|
||||||
|
fi
|
||||||
|
[ $ret -eq 0 ] && touch /var/lock/subsys/ndbd
|
||||||
|
return $ret
|
||||||
|
}
|
||||||
|
|
||||||
|
stop(){
|
||||||
|
NDBD_PID=`cat "$pidfile" 2>/dev/null `
|
||||||
|
if [ -n "$NDBD_PID" ]; then
|
||||||
|
/usr/bin/ndb_mgm -e "$node_id STOP" "$connect_string" >/dev/null
|
||||||
|
ret=$?
|
||||||
|
if [ $ret -eq 0 ]; then
|
||||||
|
rm -f /var/lock/subsys/ndbd
|
||||||
|
rm -f "$pidfile"
|
||||||
|
action $"Stopping $prog: " /bin/true
|
||||||
|
else
|
||||||
|
action $"Stopping $prog: " /bin/false
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
ret=1
|
||||||
|
action $"Stopping $prog: " /bin/false
|
||||||
|
fi
|
||||||
|
return $ret
|
||||||
|
}
|
||||||
|
|
||||||
|
restart(){
|
||||||
|
stop
|
||||||
|
start
|
||||||
|
}
|
||||||
|
|
||||||
|
condrestart(){
|
||||||
|
[ -e /var/lock/subsys/ndbd ] && restart || :
|
||||||
|
}
|
||||||
|
|
||||||
|
# See how we were called.
|
||||||
|
case "$1" in
|
||||||
|
start)
|
||||||
|
start
|
||||||
|
;;
|
||||||
|
stop)
|
||||||
|
stop
|
||||||
|
;;
|
||||||
|
status)
|
||||||
|
status ndbd
|
||||||
|
;;
|
||||||
|
restart)
|
||||||
|
restart
|
||||||
|
;;
|
||||||
|
condrestart)
|
||||||
|
condrestart
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo $"Usage: $0 {start|stop|status|condrestart|restart}"
|
||||||
|
exit 1
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit $?
|
Loading…
Reference in New Issue
Block a user