[packages/mysql/MYSQL_5_5] - up to 5.5.36; needs testing (due to mysql->percona-server dir name change)
arekm
arekm at pld-linux.org
Mon Mar 17 19:20:57 CET 2014
commit 86f973a0c64940f87e52a6488255794c5c17df40
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date: Mon Mar 17 19:20:52 2014 +0100
- up to 5.5.36; needs testing (due to mysql->percona-server dir name change)
mysql-system-users.patch | 8 ++--
mysql.init | 10 ++---
mysql.spec | 106 +++++++++++++++++++++++++----------------------
3 files changed, 65 insertions(+), 59 deletions(-)
---
diff --git a/mysql.spec b/mysql.spec
index 6efce26..fdd3124 100644
--- a/mysql.spec
+++ b/mysql.spec
@@ -23,7 +23,7 @@
%bcond_with tests # FIXME: don't run correctly
%bcond_with ndb # NDB is now a separate product, this here is broken, so disable it
-%define percona_rel 32.0
+%define percona_rel 34.1
%include /usr/lib/rpm/macros.perl
Summary: MySQL: a very fast and reliable SQL database engine
Summary(de.UTF-8): MySQL: ist eine SQL-Datenbank
@@ -34,16 +34,16 @@ Summary(ru.UTF-8): MySQL - быстрый SQL-сервер
Summary(uk.UTF-8): MySQL - швидкий SQL-сервер
Summary(zh_CN.UTF-8): MySQL数据库服务器
Name: mysql
-Version: 5.5.34
+Version: 5.5.36
Release: 1
License: GPL + MySQL FLOSS Exception
Group: Applications/Databases
# Source0Download: http://dev.mysql.com/downloads/mysql/5.5.html#downloads
# Source0: http://vesta.informatik.rwth-aachen.de/mysql/Downloads/MySQL-5.5/%{name}-%{version}.tar.gz
-Source0: http://www.percona.com/redir/downloads/Percona-Server-5.5/LATEST/release-%{version}-%{percona_rel}/591/source/Percona-Server-%{version}-rel%{percona_rel}.tar.gz
-# Source0-md5: c7db9bb119b3b38fbb6716814841630b
-Source100: http://www.sphinxsearch.com/files/sphinx-2.0.8-release.tar.gz
-# Source100-md5: bcaf0af0ba403a43b9ef3af6f9599cb4
+Source0: http://www.percona.com/redir/downloads/Percona-Server-5.5/LATEST/source/tarball/percona-server-%{version}-%{percona_rel}.tar.gz
+# Source0-md5: 437513391095eafc7d4ef34d512a9e96
+Source100: http://www.sphinxsearch.com/files/sphinx-2.1.6-release.tar.gz
+# Source100-md5: f416c743c0e0f4e337b4549928d8494f
Source1: %{name}.init
Source2: %{name}.sysconfig
Source3: %{name}.logrotate
@@ -120,6 +120,7 @@ Obsoletes: mysql-server
Conflicts: logrotate < 3.8.0
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+%define _orgname percona-server
%define _libexecdir %{_sbindir}
%define _localstatedir /var/lib/mysql
%define _mysqlhome /home/services/mysql
@@ -486,7 +487,12 @@ This package contains the standard MySQL NDB CPC Daemon.
Ten pakiet zawiera standardowego demona MySQL NDB CPC.
%prep
-%setup -q -n Percona-Server-%{version}-rel%{percona_rel} %{?with_sphinx:-a100}
+%setup -q -n percona-server-%{version}-%{percona_rel} %{?with_sphinx:-a100}
+
+# we want to use old, mysql compatible client library name
+find . -name CMakeLists.txt -exec sed -i -e 's#perconaserverclient#mysqlclient#g' "{}" ";"
+sed -i -e 's#perconaserverclient#mysqlclient#g' libmysql/libmysql.{ver.in,map}
+
%if %{with sphinx}
# http://www.sphinxsearch.com/docs/manual-0.9.9.html#sphinxse-mysql51
mv sphinx-*/mysqlse storage/sphinx
@@ -542,7 +548,7 @@ cp -a %{SOURCE15} libmysql/libmysql.version
-DINSTALL_MYSQLTESTDIR_RPM="" \
-DINSTALL_PLUGINDIR=%{_libdir}/%{name}/plugin \
-DINSTALL_SQLBENCHDIR=%{_datadir} \
- -DINSTALL_SUPPORTFILESDIR=%{_datadir}/%{name}-support \
+ -DINSTALL_SUPPORTFILESDIR=%{_datadir}/%{_orgname}-support \
-DMYSQL_UNIX_ADDR=/var/lib/%{name}/%{name}.sock \
%{?debug:-DWITH_DEBUG=ON} \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
@@ -594,7 +600,7 @@ touch $RPM_BUILD_ROOT/var/log/%{name}/{mysqld,query,slow}.log
cp mysqld.conf mysqld.tmp
awk 'BEGIN { RS="\n\n" } !/bdb/ { printf("%s\n\n", $0) }' < mysqld.tmp > mysqld.conf
-cp -a mysqld.conf $RPM_BUILD_ROOT%{_datadir}/%{name}/mysqld.conf
+cp -a mysqld.conf $RPM_BUILD_ROOT%{_datadir}/%{_orgname}/mysqld.conf
cp -a %{SOURCE13} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/mysql-client.conf
ln -s mysql-client.conf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/my.cnf
cp -a %{SOURCE14} $RPM_BUILD_ROOT/etc/skel/.my.cnf
@@ -618,7 +624,7 @@ sed -i -e '/libs/s/$ldflags//' $RPM_BUILD_ROOT%{_bindir}/mysql_config
sed -i -e '/libs/s/-lprobes_mysql//' $RPM_BUILD_ROOT%{_bindir}/mysql_config
# remove known unpackaged files
-%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/mysql-support
+%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/%{_orgname}-support
# rename not to be so generic name
mv $RPM_BUILD_ROOT%{_bindir}/{,mysql_}resolve_stack_dump
@@ -631,9 +637,9 @@ mv $RPM_BUILD_ROOT{%{_bindir},%{_sysconfdir}}/mysqlaccess.conf
%{!?debug:%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql_resolve_stack_dump}
%{!?debug:%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_resolve_stack_dump.1}
# generate symbols file, so one can generate backtrace using it
-# mysql_resolve_stack_dump -s %{_datadir}/%{name}/mysqld.sym -n mysqld.stack.
+# mysql_resolve_stack_dump -s %{_datadir}/%{_orgname}/mysqld.sym -n mysqld.stack.
# http://dev.mysql.com/doc/refman/5.0/en/using-stack-trace.html
-%{?debug:nm -n $RPM_BUILD_ROOT%{_sbindir}/mysqld > $RPM_BUILD_ROOT%{_datadir}/%{name}/mysqld.sym}
+%{?debug:nm -n $RPM_BUILD_ROOT%{_sbindir}/mysqld > $RPM_BUILD_ROOT%{_datadir}/%{_orgname}/mysqld.sym}
# do not clobber users $PATH
mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysql_plugin
@@ -652,10 +658,10 @@ mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/mysqlcheck
%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysqld_safe
%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysqld_multi
%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysqld_{multi,safe}*
-#rm $RPM_BUILD_ROOT%{_datadir}/%{name}/mysql-log-rotate
-#rm $RPM_BUILD_ROOT%{_datadir}/%{name}/mysql.server
-#rm $RPM_BUILD_ROOT%{_datadir}/%{name}/binary-configure
-%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/errmsg-utf8.txt
+#rm $RPM_BUILD_ROOT%{_datadir}/%{_orgname}/mysql-log-rotate
+#rm $RPM_BUILD_ROOT%{_datadir}/%{_orgname}/mysql.server
+#rm $RPM_BUILD_ROOT%{_datadir}/%{_orgname}/binary-configure
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{_orgname}/errmsg-utf8.txt
%{__rm} $RPM_BUILD_ROOT%{_bindir}/mysql_waitpid
%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql_waitpid.1*
%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/mysql.server*
@@ -785,7 +791,7 @@ done
%banner -e %{name}-4.1.x <<-EOF
If you want to use new help tables in MySQL 4.1.x then You'll need to import the help data:
- mysql -u mysql mysql < %{_datadir}/%{name}/fill_help_tables.sql
+ mysql -u mysql mysql < %{_datadir}/%{_orgname}/fill_help_tables.sql
EOF
#'
@@ -924,7 +930,7 @@ done
%if %{?debug:1}0
%attr(755,root,root) %{_bindir}/*resolve_stack_dump
-%{_datadir}/%{name}/mysqld.sym
+%{_datadir}/%{_orgname}/mysqld.sym
%{_mandir}/man1/*resolve_stack_dump.1*
%endif
@@ -936,41 +942,41 @@ done
%attr(640,mysql,mysql) %ghost /var/log/mysql/*
# This is template for configuration file which is created after 'service mysql init'
-%{_datadir}/%{name}/mysqld.conf
-%{_datadir}/%{name}/mysql_system_tables.sql
-%{_datadir}/%{name}/mysql_system_tables_data.sql
-%{_datadir}/%{name}/mysql_test_data_timezone.sql
-
-%{_datadir}/%{name}/english
-%{_datadir}/%{name}/fill_help_tables.sql
-#%{_datadir}/%{name}/mysql_fix_privilege_tables.sql
-%lang(cs) %{_datadir}/%{name}/czech
-%lang(da) %{_datadir}/%{name}/danish
-%lang(de) %{_datadir}/%{name}/german
-%lang(el) %{_datadir}/%{name}/greek
-%lang(es) %{_datadir}/%{name}/spanish
-%lang(et) %{_datadir}/%{name}/estonian
-%lang(fr) %{_datadir}/%{name}/french
-%lang(hu) %{_datadir}/%{name}/hungarian
-%lang(it) %{_datadir}/%{name}/italian
-%lang(ja) %{_datadir}/%{name}/japanese
-%lang(ko) %{_datadir}/%{name}/korean
-%lang(nl) %{_datadir}/%{name}/dutch
-%lang(nb) %{_datadir}/%{name}/norwegian
-%lang(nn) %{_datadir}/%{name}/norwegian-ny
-%lang(pl) %{_datadir}/%{name}/polish
-%lang(pt) %{_datadir}/%{name}/portuguese
-%lang(ro) %{_datadir}/%{name}/romanian
-%lang(ru) %{_datadir}/%{name}/russian
-%lang(sr) %{_datadir}/%{name}/serbian
-%lang(sk) %{_datadir}/%{name}/slovak
-%lang(sv) %{_datadir}/%{name}/swedish
-%lang(uk) %{_datadir}/%{name}/ukrainian
+%{_datadir}/%{_orgname}/mysqld.conf
+%{_datadir}/%{_orgname}/mysql_system_tables.sql
+%{_datadir}/%{_orgname}/mysql_system_tables_data.sql
+%{_datadir}/%{_orgname}/mysql_test_data_timezone.sql
+
+%{_datadir}/%{_orgname}/english
+%{_datadir}/%{_orgname}/fill_help_tables.sql
+#%{_datadir}/%{_orgname}/mysql_fix_privilege_tables.sql
+%lang(cs) %{_datadir}/%{_orgname}/czech
+%lang(da) %{_datadir}/%{_orgname}/danish
+%lang(de) %{_datadir}/%{_orgname}/german
+%lang(el) %{_datadir}/%{_orgname}/greek
+%lang(es) %{_datadir}/%{_orgname}/spanish
+%lang(et) %{_datadir}/%{_orgname}/estonian
+%lang(fr) %{_datadir}/%{_orgname}/french
+%lang(hu) %{_datadir}/%{_orgname}/hungarian
+%lang(it) %{_datadir}/%{_orgname}/italian
+%lang(ja) %{_datadir}/%{_orgname}/japanese
+%lang(ko) %{_datadir}/%{_orgname}/korean
+%lang(nl) %{_datadir}/%{_orgname}/dutch
+%lang(nb) %{_datadir}/%{_orgname}/norwegian
+%lang(nn) %{_datadir}/%{_orgname}/norwegian-ny
+%lang(pl) %{_datadir}/%{_orgname}/polish
+%lang(pt) %{_datadir}/%{_orgname}/portuguese
+%lang(ro) %{_datadir}/%{_orgname}/romanian
+%lang(ru) %{_datadir}/%{_orgname}/russian
+%lang(sr) %{_datadir}/%{_orgname}/serbian
+%lang(sk) %{_datadir}/%{_orgname}/slovak
+%lang(sv) %{_datadir}/%{_orgname}/swedish
+%lang(uk) %{_datadir}/%{_orgname}/ukrainian
%files charsets
%defattr(644,root,root,755)
-%dir %{_datadir}/mysql
-%{_datadir}/%{name}/charsets
+%dir %{_datadir}/%{_orgname}
+%{_datadir}/%{_orgname}/charsets
%files extras
%defattr(644,root,root,755)
diff --git a/mysql-system-users.patch b/mysql-system-users.patch
index 34b360c..a344f90 100644
--- a/mysql-system-users.patch
+++ b/mysql-system-users.patch
@@ -18,17 +18,17 @@
-- from local machine if "user" table didn't exist before
CREATE TEMPORARY TABLE tmp_user LIKE user;
-INSERT INTO tmp_user VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'','');
--REPLACE INTO tmp_user SELECT @current_hostname,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'','' FROM dual WHERE LOWER( @current_hostname) != 'localhost';
+-REPLACE INTO tmp_user SELECT @current_hostname,'root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'','' FROM dual WHERE @current_hostname != 'localhost';
-REPLACE INTO tmp_user VALUES ('127.0.0.1','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'','');
-REPLACE INTO tmp_user VALUES ('::1','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'','');
+INSERT INTO tmp_user VALUES ('localhost','mysql','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'','');
-+REPLACE INTO tmp_user SELECT @current_hostname,'mysql','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'','' FROM dual WHERE LOWER( @current_hostname) != 'localhost';
++REPLACE INTO tmp_user SELECT @current_hostname,'mysql','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'','' FROM dual WHERE @current_hostname != 'localhost';
+REPLACE INTO tmp_user VALUES ('127.0.0.1','mysql','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'','');
+REPLACE INTO tmp_user VALUES ('::1','mysql','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'','');
+INSERT INTO tmp_user VALUES ('localhost','mysql_sysadmin','','N','N','N','N','N','N','Y','Y','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','','','','',0,0,0,0,'','');
-+REPLACE INTO tmp_user SELECT @current_hostname,'mysql_sysadmin','','N','N','N','N','N','N','Y','Y','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','','','','',0,0,0,0,'','' FROM dual WHERE LOWER( @current_hostname) != 'localhost';
++REPLACE INTO tmp_user SELECT @current_hostname,'mysql_sysadmin','','N','N','N','N','N','N','Y','Y','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','','','','',0,0,0,0,'','' FROM dual WHERE @current_hostname != 'localhost';
+REPLACE INTO tmp_user VALUES ('127.0.0.1','mysql_sysadmin','','N','N','N','N','N','N','Y','Y','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','','','','',0,0,0,0,'','');
+REPLACE INTO tmp_user VALUES ('::1','mysql_sysadmin','','N','N','N','N','N','N','Y','Y','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','','','','',0,0,0,0,'','');
INSERT INTO tmp_user (host,user) VALUES ('localhost','');
- INSERT INTO tmp_user (host,user) SELECT @current_hostname,'' FROM dual WHERE LOWER(@current_hostname ) != 'localhost';
+ INSERT INTO tmp_user (host,user) SELECT @current_hostname,'' FROM dual WHERE @current_hostname != 'localhost';
INSERT INTO user SELECT * FROM tmp_user WHERE @had_user_table=0;
diff --git a/mysql.init b/mysql.init
index ab32354..7cced78 100755
--- a/mysql.init
+++ b/mysql.init
@@ -468,13 +468,13 @@ mysqlinit() {
chown mysql:mysql "$MYSQL_CLUSTER_DIR/mysqldb" "$MYSQL_DATA_DIR" > /dev/null 2>&1
chmod 751 "$MYSQL_CLUSTER_DIR" "$MYSQL_CLUSTER_DIR/mysqldb"
- if [ -f /usr/share/mysql/mysqld.conf -a ! -f "$MYSQL_CLUSTER_DIR/mysqld.conf" ]; then
+ if [ -f /usr/share/percona-server/mysqld.conf -a ! -f "$MYSQL_CLUSTER_DIR/mysqld.conf" ]; then
sed -e "
s#\(datadir.*\)=.*#\1= $MYSQL_DATA_DIR#g;
s#\(pid-file.*\)=.*#\1= $MYSQL_PIDFILE#g;
s#\(socket.*\)=.*#\1= $MYSQL_SOCKET#g;
s#@clusterdir@#$MYSQL_CLUSTER_DIR#g;
- " /usr/share/mysql/mysqld.conf > "$MYSQL_CLUSTER_DIR/mysqld.conf"
+ " /usr/share/percona-server/mysqld.conf > "$MYSQL_CLUSTER_DIR/mysqld.conf"
chown root:root "$MYSQL_CLUSTER_DIR/mysqld.conf"
chmod 640 "$MYSQL_CLUSTER_DIR/mysqld.conf"
fi
@@ -487,8 +487,8 @@ mysqlinit() {
cat > $MYSQL_DATA_DIR/mysql-init.sql <<-EOF
CREATE DATABASE mysql;
use mysql;
- $(cat /usr/share/mysql/mysql_system_tables.sql)
- $(sed -e "/@current_hostname/d" /usr/share/mysql/mysql_system_tables_data.sql)
+ $(cat /usr/share/percona-server/mysql_system_tables.sql)
+ $(sed -e "/@current_hostname/d" /usr/share/percona-server/mysql_system_tables_data.sql)
EOF
ok=0
@@ -526,7 +526,7 @@ mysqladmin section. See the manual for more instructions.
END_OF_MSG
show "Filling help tables..."
ok=0
- ( echo "use mysql;"; cat /usr/share/mysql/fill_help_tables.sql ) | \
+ ( echo "use mysql;"; cat /usr/share/percona-server/fill_help_tables.sql ) | \
/usr/sbin/mysqld \
--defaults-file=$MYSQL_CLUSTER_DIR/mysqld.conf \
--bootstrap \
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/mysql.git/commitdiff/86f973a0c64940f87e52a6488255794c5c17df40
More information about the pld-cvs-commit
mailing list