[arch-commits] Commit in percona-server/repos (14 files)

Andrea Scarpino andrea at nymeria.archlinux.org
Thu Mar 14 21:30:32 UTC 2013


    Date: Thursday, March 14, 2013 @ 22:30:31
  Author: andrea
Revision: 86301

archrelease: copy trunk to community-staging-i686, community-staging-x86_64

Added:
  percona-server/repos/community-staging-i686/
  percona-server/repos/community-staging-i686/PKGBUILD
    (from rev 86300, percona-server/trunk/PKGBUILD)
  percona-server/repos/community-staging-i686/my.cnf
    (from rev 86300, percona-server/trunk/my.cnf)
  percona-server/repos/community-staging-i686/mysqld-post.sh
    (from rev 86300, percona-server/trunk/mysqld-post.sh)
  percona-server/repos/community-staging-i686/mysqld-tmpfile.conf
    (from rev 86300, percona-server/trunk/mysqld-tmpfile.conf)
  percona-server/repos/community-staging-i686/mysqld.service
    (from rev 86300, percona-server/trunk/mysqld.service)
  percona-server/repos/community-staging-i686/percona.install
    (from rev 86300, percona-server/trunk/percona.install)
  percona-server/repos/community-staging-x86_64/
  percona-server/repos/community-staging-x86_64/PKGBUILD
    (from rev 86300, percona-server/trunk/PKGBUILD)
  percona-server/repos/community-staging-x86_64/my.cnf
    (from rev 86300, percona-server/trunk/my.cnf)
  percona-server/repos/community-staging-x86_64/mysqld-post.sh
    (from rev 86300, percona-server/trunk/mysqld-post.sh)
  percona-server/repos/community-staging-x86_64/mysqld-tmpfile.conf
    (from rev 86300, percona-server/trunk/mysqld-tmpfile.conf)
  percona-server/repos/community-staging-x86_64/mysqld.service
    (from rev 86300, percona-server/trunk/mysqld.service)
  percona-server/repos/community-staging-x86_64/percona.install
    (from rev 86300, percona-server/trunk/percona.install)

----------------------------------------------+
 community-staging-i686/PKGBUILD              |  103 +++++++++++++++++
 community-staging-i686/my.cnf                |  145 +++++++++++++++++++++++++
 community-staging-i686/mysqld-post.sh        |    8 +
 community-staging-i686/mysqld-tmpfile.conf   |    1 
 community-staging-i686/mysqld.service        |   16 ++
 community-staging-i686/percona.install       |   37 ++++++
 community-staging-x86_64/PKGBUILD            |  103 +++++++++++++++++
 community-staging-x86_64/my.cnf              |  145 +++++++++++++++++++++++++
 community-staging-x86_64/mysqld-post.sh      |    8 +
 community-staging-x86_64/mysqld-tmpfile.conf |    1 
 community-staging-x86_64/mysqld.service      |   16 ++
 community-staging-x86_64/percona.install     |   37 ++++++
 12 files changed, 620 insertions(+)

Copied: percona-server/repos/community-staging-i686/PKGBUILD (from rev 86300, percona-server/trunk/PKGBUILD)
===================================================================
--- community-staging-i686/PKGBUILD	                        (rev 0)
+++ community-staging-i686/PKGBUILD	2013-03-14 21:30:31 UTC (rev 86301)
@@ -0,0 +1,103 @@
+# $Id$
+# Maintainer: Massimiliano Torromeo <massimiliano.torromeo at gmail.com>
+
+pkgname=percona-server
+pkgver=5.5.30_rel30.1
+pkgrel=2
+pkgdesc="A backwards-compatible drop-in replacement for MySQL that provides improved performance, diagnostics and instrumentation"
+arch=('i686' 'x86_64')
+
+depends=('mariadb-clients' 'libaio' 'systemd-tools')
+conflicts=('mysql')
+provides=('mysql')
+optdepends=('perl-dbi' 'perl-dbd-mysql')
+makedepends=('cmake' 'openssl' 'zlib')
+
+license=('GPL')
+url="http://www.percona.com/software/percona-server/"
+options=('!libtool' 'emptydirs')
+backup=('etc/mysql/my.cnf')
+install=percona.install
+source=("http://www.percona.com/downloads/Percona-Server-${pkgver%.*_*}/Percona-Server-${pkgver/_rel/-}/source/Percona-Server-${pkgver/_/-}.tar.gz"
+        'mysqld-post.sh'
+        'mysqld.service'
+        'mysqld-tmpfile.conf')
+
+build() {
+	cd "${srcdir}/Percona-Server-${pkgver/_/-}"
+	sed -i 's|ADD_SUBDIRECTORY(libmysqld/examples)|# ADD_SUBDIRECTORY(libmysqld/examples)|' CMakeLists.txt
+
+	cd "${srcdir}"
+	rm -rf build
+	mkdir build
+	cd build
+
+	cmake "${srcdir}/Percona-Server-${pkgver/_/-}" \
+		-DCMAKE_BUILD_TYPE=Release \
+		-DCMAKE_INSTALL_PREFIX=/usr \
+		-DSYSCONFDIR=/etc/mysql \
+		-DMYSQL_DATADIR=/var/lib/mysql \
+		-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock \
+		-DDEFAULT_CHARSET=utf8 \
+		-DDEFAULT_COLLATION=utf8_general_ci \
+		-DENABLED_LOCAL_INFILE=ON \
+		-DINSTALL_INFODIR=share/mysql/docs \
+		-DINSTALL_MANDIR=share/man \
+		-DINSTALL_PLUGINDIR=lib/mysql/plugin \
+		-DINSTALL_SCRIPTDIR=bin \
+		-DINSTALL_INCLUDEDIR=include/mysql \
+		-DINSTALL_DOCREADMEDIR=share/mysql \
+		-DINSTALL_SUPPORTFILESDIR=share/mysql \
+		-DINSTALL_MYSQLSHAREDIR=share/mysql \
+		-DINSTALL_DOCDIR=share/mysql/docs \
+		-DINSTALL_SHAREDIR=share/mysql \
+		-DWITH_READLINE=ON \
+		-DWITH_ZLIB=system \
+		-DWITH_SSL=system \
+		-DWITH_LIBWRAP=OFF \
+		-DWITH_LIBEDIT=OFF \
+		-DWITH_UNIT_TESTS=OFF \
+		-DWITH_MYSQLD_LDFLAGS="${LDFLAGS}" \
+		-DWITH_EXTRA_CHARSETS=complex \
+		-DWITH_EMBEDDED_SERVER=ON \
+		-DWITH_INNOBASE_STORAGE_ENGINE=ON \
+		-DWITH_PARTITION_STORAGE_ENGINE=ON \
+		-DWITH_PERFSCHEMA_STORAGE_ENGINE=ON \
+		-DWITH_ARCHIVE_STORAGE_ENGINE=ON \
+		-DWITH_BLACKHOLE_STORAGE_ENGINE=ON \
+		-DWITH_FEDERATED_STORAGE_ENGINE=OFF \
+		-DWITH_EXAMPLE_STORAGE_ENGINE=OFF \
+		-DCMAKE_C_FLAGS="-fPIC ${CFLAGS} -fno-strict-aliasing -DBIG_JOINS=1 -fomit-frame-pointer" \
+		-DCMAKE_CXX_FLAGS="-fPIC ${CXXFLAGS} -fno-strict-aliasing -DBIG_JOINS=1 -felide-constructors -fno-rtti -fpermissive"
+
+	make
+}
+
+package() {
+	cd "${srcdir}"/build
+	make DESTDIR=${pkgdir} install
+
+	install -Dm644 "${pkgdir}"/usr/share/mysql/my-medium.cnf "${pkgdir}"/etc/mysql/my.cnf
+	install -Dm755 "${srcdir}"/mysqld-post.sh "${pkgdir}"/usr/bin/mysqld-post
+	install -Dm644 "${srcdir}"/mysqld-tmpfile.conf "${pkgdir}"/usr/lib/tmpfiles.d/mysqld.conf
+	install -Dm644 "${srcdir}"/mysqld.service "${pkgdir}"/usr/lib/systemd/system/mysqld.service
+
+	# provided by libmysqlclient
+	rm ${pkgdir}/usr/bin/mysql_config
+	rm ${pkgdir}/usr/lib/libmysql*
+	rm -r ${pkgdir}/usr/include/
+	rm ${pkgdir}/usr/share/man/man1/{mysql_config,mysql_client_test_embedded,mysqltest_embedded}.1
+
+	# provided by mysql-clients
+	rm ${pkgdir}/usr/bin/{mysql,mysqladmin,mysqlcheck,mysqldump,mysqlimport,mysqlshow,mysqlslap}
+	rm ${pkgdir}/usr/share/man/man1/{mysql,mysqladmin,mysqlcheck,mysqldump,mysqlimport,mysqlshow,mysqlslap}.1
+
+	# not needed
+	rm -r ${pkgdir}/usr/{data,mysql-test,sql-bench}
+	rm "${pkgdir}"/usr/share/man/man1/mysql-test-run.pl.1
+}
+
+sha256sums=('7309cf2645a1b45a17d6dbfda8c96b00e1186f3b9aba7f8692da14b52f98fb3b'
+            '82a241d9fa4032187a26597d044e94ba810b209b53a7ce14bb6eb92555993a48'
+            '9bc66470f3f80534c0bb62f9f8325ccf60b164f421f74ad74a963f065d7b1869'
+            'badf6a701d9dc6ea3b4ddca26cb0f42b6236432ccdbc14c64962147802594a60')

Copied: percona-server/repos/community-staging-i686/my.cnf (from rev 86300, percona-server/trunk/my.cnf)
===================================================================
--- community-staging-i686/my.cnf	                        (rev 0)
+++ community-staging-i686/my.cnf	2013-03-14 21:30:31 UTC (rev 86301)
@@ -0,0 +1,145 @@
+# MySQL config file for medium systems.
+#
+# This is for a system with little memory (32M - 64M) where MySQL plays
+# an important part, or systems up to 128M where MySQL is used together with
+# other programs (such as a web server)
+#
+# MySQL programs look for option files in a set of
+# locations which depend on the deployment platform.
+# You can copy this option file to one of those
+# locations. For information about these locations, see:
+# http://dev.mysql.com/doc/mysql/en/option-files.html
+#
+# In this file, you can use all long options that a program supports.
+# If you want to know which options a program supports, run the program
+# with the "--help" option.
+
+# The following options will be passed to all MySQL clients
+[client]
+#password	= your_password
+port		    = 3306
+socket		= /run/mysqld/mysqld.sock
+
+# Here follows entries for some specific programs
+
+# The MySQL server
+[mysqld]
+port		    = 3306
+socket		= /run/mysqld/mysqld.sock
+datadir		= /var/lib/mysql
+skip-external-locking
+key_buffer_size = 16M
+max_allowed_packet = 1M
+table_open_cache = 64
+sort_buffer_size = 512K
+net_buffer_length = 8K
+read_buffer_size = 256K
+read_rnd_buffer_size = 512K
+myisam_sort_buffer_size = 8M
+
+# Don't listen on a TCP/IP port at all. This can be a security enhancement,
+# if all processes that need to connect to mysqld run on the same host.
+# All interaction with mysqld must be made via Unix sockets or named pipes.
+# Note that using this option without enabling named pipes on Windows
+# (via the "enable-named-pipe" option) will render mysqld useless!
+#
+skip-networking
+
+# Replication Master Server (default)
+# binary logging is required for replication
+log-bin=mysql-bin
+
+# binary logging format - mixed recommended
+binlog_format=mixed
+
+# required unique id between 1 and 2^32 - 1
+# defaults to 1 if master-host is not set
+# but will not function as a master if omitted
+server-id	= 1
+
+# Replication Slave (comment out master section to use this)
+#
+# To configure this host as a replication slave, you can choose between
+# two methods :
+#
+# 1) Use the CHANGE MASTER TO command (fully described in our manual) -
+#    the syntax is:
+#
+#    CHANGE MASTER TO MASTER_HOST=<host>, MASTER_PORT=<port>,
+#    MASTER_USER=<user>, MASTER_PASSWORD=<password> ;
+#
+#    where you replace <host>, <user>, <password> by quoted strings and
+#    <port> by the master's port number (3306 by default).
+#
+#    Example:
+#
+#    CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,
+#    MASTER_USER='joe', MASTER_PASSWORD='secret';
+#
+# OR
+#
+# 2) Set the variables below. However, in case you choose this method, then
+#    start replication for the first time (even unsuccessfully, for example
+#    if you mistyped the password in master-password and the slave fails to
+#    connect), the slave will create a master.info file, and any later
+#    change in this file to the variables' values below will be ignored and
+#    overridden by the content of the master.info file, unless you shutdown
+#    the slave server, delete master.info and restart the slaver server.
+#    For that reason, you may want to leave the lines below untouched
+#    (commented) and instead use CHANGE MASTER TO (see above)
+#
+# required unique id between 2 and 2^32 - 1
+# (and different from the master)
+# defaults to 2 if master-host is set
+# but will not function as a slave if omitted
+#server-id       = 2
+#
+# The replication master for this slave - required
+#master-host     =   <hostname>
+#
+# The username the slave will use for authentication when connecting
+# to the master - required
+#master-user     =   <username>
+#
+# The password the slave will authenticate with when connecting to
+# the master - required
+#master-password =   <password>
+#
+# The port the master is listening on.
+# optional - defaults to 3306
+#master-port     =  <port>
+#
+# binary logging - not required for slaves, but recommended
+#log-bin=mysql-bin
+
+# Uncomment the following if you are using InnoDB tables
+#innodb_data_home_dir = /var/lib/mysql
+#innodb_data_file_path = ibdata1:10M:autoextend
+#innodb_log_group_home_dir = /var/lib/mysql
+# You can set .._buffer_pool_size up to 50 - 80 %
+# of RAM but beware of setting memory usage too high
+#innodb_buffer_pool_size = 16M
+#innodb_additional_mem_pool_size = 2M
+# Set .._log_file_size to 25 % of buffer pool size
+#innodb_log_file_size = 5M
+#innodb_log_buffer_size = 8M
+#innodb_flush_log_at_trx_commit = 1
+#innodb_lock_wait_timeout = 50
+
+[mysqldump]
+quick
+max_allowed_packet = 16M
+
+[mysql]
+no-auto-rehash
+# Remove the next comment character if you are not familiar with SQL
+#safe-updates
+
+[myisamchk]
+key_buffer_size = 20M
+sort_buffer_size = 20M
+read_buffer = 2M
+write_buffer = 2M
+
+[mysqlhotcopy]
+interactive-timeout

Copied: percona-server/repos/community-staging-i686/mysqld-post.sh (from rev 86300, percona-server/trunk/mysqld-post.sh)
===================================================================
--- community-staging-i686/mysqld-post.sh	                        (rev 0)
+++ community-staging-i686/mysqld-post.sh	2013-03-14 21:30:31 UTC (rev 86301)
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+while true; do
+	response=$(/usr/bin/mysqladmin -uUNKNOWN_USER ping 2>&1) && break
+	echo "$response" | grep -q "mysqld is alive" && break
+	echo "$response" | grep -q "Access denied for user" && break
+	sleep 1
+done

Copied: percona-server/repos/community-staging-i686/mysqld-tmpfile.conf (from rev 86300, percona-server/trunk/mysqld-tmpfile.conf)
===================================================================
--- community-staging-i686/mysqld-tmpfile.conf	                        (rev 0)
+++ community-staging-i686/mysqld-tmpfile.conf	2013-03-14 21:30:31 UTC (rev 86301)
@@ -0,0 +1 @@
+d /run/mysqld 0755 mysql mysql -
\ No newline at end of file

Copied: percona-server/repos/community-staging-i686/mysqld.service (from rev 86300, percona-server/trunk/mysqld.service)
===================================================================
--- community-staging-i686/mysqld.service	                        (rev 0)
+++ community-staging-i686/mysqld.service	2013-03-14 21:30:31 UTC (rev 86301)
@@ -0,0 +1,16 @@
+[Unit]
+Description=MySQL database server
+After=syslog.target network.target
+
+[Service]
+User=mysql
+Group=mysql
+
+ExecStart=/usr/bin/mysqld --pid-file=/run/mysqld/mysqld.pid
+ExecStartPost=/usr/bin/mysqld-post
+
+Restart=always
+PrivateTmp=true
+
+[Install]
+WantedBy=multi-user.target

Copied: percona-server/repos/community-staging-i686/percona.install (from rev 86300, percona-server/trunk/percona.install)
===================================================================
--- community-staging-i686/percona.install	                        (rev 0)
+++ community-staging-i686/percona.install	2013-03-14 21:30:31 UTC (rev 86301)
@@ -0,0 +1,37 @@
+if [[ $(command -v my_print_defaults >/dev/null 2>&1) ]]; then
+  datadir=$(my_print_defaults mysqld | sed -n "s/^--datadir=//p")
+fi
+[[ -z $datadir ]] && datadir=/var/lib/mysql
+
+post_install(){
+  groupadd -g 89 mysql &>/dev/null
+  useradd -u 89 -g mysql -d $datadir -s /bin/false mysql &>/dev/null
+  
+  if [[ ! -e $datadir ]]; then
+    install -dm700 $datadir
+    usr/bin/mysql_install_db --user=mysql --basedir=/usr --datadir=$datadir
+    chown -R mysql:mysql $datadir &>/dev/null
+  fi
+
+  usr/bin/systemd-tmpfiles --create mysqld.conf
+}
+
+post_upgrade(){
+  getent group mysql >/dev/null 2>&1 || groupadd -g 89 mysql &>/dev/null
+  getent passwd mysql >/dev/null 2>&1 || useradd -u 89 -g mysql -d $datadir -s /bin/false mysql &>/dev/null
+
+  if [ "$(vercmp $2 5.5)" -lt 0 ]; then
+    echo " >> "
+    echo " >> Major version update. Consider restart the service, and then running mysql_upgrade after it."
+    echo " >> "
+  fi
+}
+
+post_remove(){
+  if getent passwd mysql >/dev/null 2>&1; then
+    userdel mysql
+  fi
+  if getent group mysql >/dev/null 2>&1; then
+    groupdel mysql
+  fi
+}

Copied: percona-server/repos/community-staging-x86_64/PKGBUILD (from rev 86300, percona-server/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD	                        (rev 0)
+++ community-staging-x86_64/PKGBUILD	2013-03-14 21:30:31 UTC (rev 86301)
@@ -0,0 +1,103 @@
+# $Id$
+# Maintainer: Massimiliano Torromeo <massimiliano.torromeo at gmail.com>
+
+pkgname=percona-server
+pkgver=5.5.30_rel30.1
+pkgrel=2
+pkgdesc="A backwards-compatible drop-in replacement for MySQL that provides improved performance, diagnostics and instrumentation"
+arch=('i686' 'x86_64')
+
+depends=('mariadb-clients' 'libaio' 'systemd-tools')
+conflicts=('mysql')
+provides=('mysql')
+optdepends=('perl-dbi' 'perl-dbd-mysql')
+makedepends=('cmake' 'openssl' 'zlib')
+
+license=('GPL')
+url="http://www.percona.com/software/percona-server/"
+options=('!libtool' 'emptydirs')
+backup=('etc/mysql/my.cnf')
+install=percona.install
+source=("http://www.percona.com/downloads/Percona-Server-${pkgver%.*_*}/Percona-Server-${pkgver/_rel/-}/source/Percona-Server-${pkgver/_/-}.tar.gz"
+        'mysqld-post.sh'
+        'mysqld.service'
+        'mysqld-tmpfile.conf')
+
+build() {
+	cd "${srcdir}/Percona-Server-${pkgver/_/-}"
+	sed -i 's|ADD_SUBDIRECTORY(libmysqld/examples)|# ADD_SUBDIRECTORY(libmysqld/examples)|' CMakeLists.txt
+
+	cd "${srcdir}"
+	rm -rf build
+	mkdir build
+	cd build
+
+	cmake "${srcdir}/Percona-Server-${pkgver/_/-}" \
+		-DCMAKE_BUILD_TYPE=Release \
+		-DCMAKE_INSTALL_PREFIX=/usr \
+		-DSYSCONFDIR=/etc/mysql \
+		-DMYSQL_DATADIR=/var/lib/mysql \
+		-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock \
+		-DDEFAULT_CHARSET=utf8 \
+		-DDEFAULT_COLLATION=utf8_general_ci \
+		-DENABLED_LOCAL_INFILE=ON \
+		-DINSTALL_INFODIR=share/mysql/docs \
+		-DINSTALL_MANDIR=share/man \
+		-DINSTALL_PLUGINDIR=lib/mysql/plugin \
+		-DINSTALL_SCRIPTDIR=bin \
+		-DINSTALL_INCLUDEDIR=include/mysql \
+		-DINSTALL_DOCREADMEDIR=share/mysql \
+		-DINSTALL_SUPPORTFILESDIR=share/mysql \
+		-DINSTALL_MYSQLSHAREDIR=share/mysql \
+		-DINSTALL_DOCDIR=share/mysql/docs \
+		-DINSTALL_SHAREDIR=share/mysql \
+		-DWITH_READLINE=ON \
+		-DWITH_ZLIB=system \
+		-DWITH_SSL=system \
+		-DWITH_LIBWRAP=OFF \
+		-DWITH_LIBEDIT=OFF \
+		-DWITH_UNIT_TESTS=OFF \
+		-DWITH_MYSQLD_LDFLAGS="${LDFLAGS}" \
+		-DWITH_EXTRA_CHARSETS=complex \
+		-DWITH_EMBEDDED_SERVER=ON \
+		-DWITH_INNOBASE_STORAGE_ENGINE=ON \
+		-DWITH_PARTITION_STORAGE_ENGINE=ON \
+		-DWITH_PERFSCHEMA_STORAGE_ENGINE=ON \
+		-DWITH_ARCHIVE_STORAGE_ENGINE=ON \
+		-DWITH_BLACKHOLE_STORAGE_ENGINE=ON \
+		-DWITH_FEDERATED_STORAGE_ENGINE=OFF \
+		-DWITH_EXAMPLE_STORAGE_ENGINE=OFF \
+		-DCMAKE_C_FLAGS="-fPIC ${CFLAGS} -fno-strict-aliasing -DBIG_JOINS=1 -fomit-frame-pointer" \
+		-DCMAKE_CXX_FLAGS="-fPIC ${CXXFLAGS} -fno-strict-aliasing -DBIG_JOINS=1 -felide-constructors -fno-rtti -fpermissive"
+
+	make
+}
+
+package() {
+	cd "${srcdir}"/build
+	make DESTDIR=${pkgdir} install
+
+	install -Dm644 "${pkgdir}"/usr/share/mysql/my-medium.cnf "${pkgdir}"/etc/mysql/my.cnf
+	install -Dm755 "${srcdir}"/mysqld-post.sh "${pkgdir}"/usr/bin/mysqld-post
+	install -Dm644 "${srcdir}"/mysqld-tmpfile.conf "${pkgdir}"/usr/lib/tmpfiles.d/mysqld.conf
+	install -Dm644 "${srcdir}"/mysqld.service "${pkgdir}"/usr/lib/systemd/system/mysqld.service
+
+	# provided by libmysqlclient
+	rm ${pkgdir}/usr/bin/mysql_config
+	rm ${pkgdir}/usr/lib/libmysql*
+	rm -r ${pkgdir}/usr/include/
+	rm ${pkgdir}/usr/share/man/man1/{mysql_config,mysql_client_test_embedded,mysqltest_embedded}.1
+
+	# provided by mysql-clients
+	rm ${pkgdir}/usr/bin/{mysql,mysqladmin,mysqlcheck,mysqldump,mysqlimport,mysqlshow,mysqlslap}
+	rm ${pkgdir}/usr/share/man/man1/{mysql,mysqladmin,mysqlcheck,mysqldump,mysqlimport,mysqlshow,mysqlslap}.1
+
+	# not needed
+	rm -r ${pkgdir}/usr/{data,mysql-test,sql-bench}
+	rm "${pkgdir}"/usr/share/man/man1/mysql-test-run.pl.1
+}
+
+sha256sums=('7309cf2645a1b45a17d6dbfda8c96b00e1186f3b9aba7f8692da14b52f98fb3b'
+            '82a241d9fa4032187a26597d044e94ba810b209b53a7ce14bb6eb92555993a48'
+            '9bc66470f3f80534c0bb62f9f8325ccf60b164f421f74ad74a963f065d7b1869'
+            'badf6a701d9dc6ea3b4ddca26cb0f42b6236432ccdbc14c64962147802594a60')

Copied: percona-server/repos/community-staging-x86_64/my.cnf (from rev 86300, percona-server/trunk/my.cnf)
===================================================================
--- community-staging-x86_64/my.cnf	                        (rev 0)
+++ community-staging-x86_64/my.cnf	2013-03-14 21:30:31 UTC (rev 86301)
@@ -0,0 +1,145 @@
+# MySQL config file for medium systems.
+#
+# This is for a system with little memory (32M - 64M) where MySQL plays
+# an important part, or systems up to 128M where MySQL is used together with
+# other programs (such as a web server)
+#
+# MySQL programs look for option files in a set of
+# locations which depend on the deployment platform.
+# You can copy this option file to one of those
+# locations. For information about these locations, see:
+# http://dev.mysql.com/doc/mysql/en/option-files.html
+#
+# In this file, you can use all long options that a program supports.
+# If you want to know which options a program supports, run the program
+# with the "--help" option.
+
+# The following options will be passed to all MySQL clients
+[client]
+#password	= your_password
+port		    = 3306
+socket		= /run/mysqld/mysqld.sock
+
+# Here follows entries for some specific programs
+
+# The MySQL server
+[mysqld]
+port		    = 3306
+socket		= /run/mysqld/mysqld.sock
+datadir		= /var/lib/mysql
+skip-external-locking
+key_buffer_size = 16M
+max_allowed_packet = 1M
+table_open_cache = 64
+sort_buffer_size = 512K
+net_buffer_length = 8K
+read_buffer_size = 256K
+read_rnd_buffer_size = 512K
+myisam_sort_buffer_size = 8M
+
+# Don't listen on a TCP/IP port at all. This can be a security enhancement,
+# if all processes that need to connect to mysqld run on the same host.
+# All interaction with mysqld must be made via Unix sockets or named pipes.
+# Note that using this option without enabling named pipes on Windows
+# (via the "enable-named-pipe" option) will render mysqld useless!
+#
+skip-networking
+
+# Replication Master Server (default)
+# binary logging is required for replication
+log-bin=mysql-bin
+
+# binary logging format - mixed recommended
+binlog_format=mixed
+
+# required unique id between 1 and 2^32 - 1
+# defaults to 1 if master-host is not set
+# but will not function as a master if omitted
+server-id	= 1
+
+# Replication Slave (comment out master section to use this)
+#
+# To configure this host as a replication slave, you can choose between
+# two methods :
+#
+# 1) Use the CHANGE MASTER TO command (fully described in our manual) -
+#    the syntax is:
+#
+#    CHANGE MASTER TO MASTER_HOST=<host>, MASTER_PORT=<port>,
+#    MASTER_USER=<user>, MASTER_PASSWORD=<password> ;
+#
+#    where you replace <host>, <user>, <password> by quoted strings and
+#    <port> by the master's port number (3306 by default).
+#
+#    Example:
+#
+#    CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,
+#    MASTER_USER='joe', MASTER_PASSWORD='secret';
+#
+# OR
+#
+# 2) Set the variables below. However, in case you choose this method, then
+#    start replication for the first time (even unsuccessfully, for example
+#    if you mistyped the password in master-password and the slave fails to
+#    connect), the slave will create a master.info file, and any later
+#    change in this file to the variables' values below will be ignored and
+#    overridden by the content of the master.info file, unless you shutdown
+#    the slave server, delete master.info and restart the slaver server.
+#    For that reason, you may want to leave the lines below untouched
+#    (commented) and instead use CHANGE MASTER TO (see above)
+#
+# required unique id between 2 and 2^32 - 1
+# (and different from the master)
+# defaults to 2 if master-host is set
+# but will not function as a slave if omitted
+#server-id       = 2
+#
+# The replication master for this slave - required
+#master-host     =   <hostname>
+#
+# The username the slave will use for authentication when connecting
+# to the master - required
+#master-user     =   <username>
+#
+# The password the slave will authenticate with when connecting to
+# the master - required
+#master-password =   <password>
+#
+# The port the master is listening on.
+# optional - defaults to 3306
+#master-port     =  <port>
+#
+# binary logging - not required for slaves, but recommended
+#log-bin=mysql-bin
+
+# Uncomment the following if you are using InnoDB tables
+#innodb_data_home_dir = /var/lib/mysql
+#innodb_data_file_path = ibdata1:10M:autoextend
+#innodb_log_group_home_dir = /var/lib/mysql
+# You can set .._buffer_pool_size up to 50 - 80 %
+# of RAM but beware of setting memory usage too high
+#innodb_buffer_pool_size = 16M
+#innodb_additional_mem_pool_size = 2M
+# Set .._log_file_size to 25 % of buffer pool size
+#innodb_log_file_size = 5M
+#innodb_log_buffer_size = 8M
+#innodb_flush_log_at_trx_commit = 1
+#innodb_lock_wait_timeout = 50
+
+[mysqldump]
+quick
+max_allowed_packet = 16M
+
+[mysql]
+no-auto-rehash
+# Remove the next comment character if you are not familiar with SQL
+#safe-updates
+
+[myisamchk]
+key_buffer_size = 20M
+sort_buffer_size = 20M
+read_buffer = 2M
+write_buffer = 2M
+
+[mysqlhotcopy]
+interactive-timeout

Copied: percona-server/repos/community-staging-x86_64/mysqld-post.sh (from rev 86300, percona-server/trunk/mysqld-post.sh)
===================================================================
--- community-staging-x86_64/mysqld-post.sh	                        (rev 0)
+++ community-staging-x86_64/mysqld-post.sh	2013-03-14 21:30:31 UTC (rev 86301)
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+while true; do
+	response=$(/usr/bin/mysqladmin -uUNKNOWN_USER ping 2>&1) && break
+	echo "$response" | grep -q "mysqld is alive" && break
+	echo "$response" | grep -q "Access denied for user" && break
+	sleep 1
+done

Copied: percona-server/repos/community-staging-x86_64/mysqld-tmpfile.conf (from rev 86300, percona-server/trunk/mysqld-tmpfile.conf)
===================================================================
--- community-staging-x86_64/mysqld-tmpfile.conf	                        (rev 0)
+++ community-staging-x86_64/mysqld-tmpfile.conf	2013-03-14 21:30:31 UTC (rev 86301)
@@ -0,0 +1 @@
+d /run/mysqld 0755 mysql mysql -
\ No newline at end of file

Copied: percona-server/repos/community-staging-x86_64/mysqld.service (from rev 86300, percona-server/trunk/mysqld.service)
===================================================================
--- community-staging-x86_64/mysqld.service	                        (rev 0)
+++ community-staging-x86_64/mysqld.service	2013-03-14 21:30:31 UTC (rev 86301)
@@ -0,0 +1,16 @@
+[Unit]
+Description=MySQL database server
+After=syslog.target network.target
+
+[Service]
+User=mysql
+Group=mysql
+
+ExecStart=/usr/bin/mysqld --pid-file=/run/mysqld/mysqld.pid
+ExecStartPost=/usr/bin/mysqld-post
+
+Restart=always
+PrivateTmp=true
+
+[Install]
+WantedBy=multi-user.target

Copied: percona-server/repos/community-staging-x86_64/percona.install (from rev 86300, percona-server/trunk/percona.install)
===================================================================
--- community-staging-x86_64/percona.install	                        (rev 0)
+++ community-staging-x86_64/percona.install	2013-03-14 21:30:31 UTC (rev 86301)
@@ -0,0 +1,37 @@
+if [[ $(command -v my_print_defaults >/dev/null 2>&1) ]]; then
+  datadir=$(my_print_defaults mysqld | sed -n "s/^--datadir=//p")
+fi
+[[ -z $datadir ]] && datadir=/var/lib/mysql
+
+post_install(){
+  groupadd -g 89 mysql &>/dev/null
+  useradd -u 89 -g mysql -d $datadir -s /bin/false mysql &>/dev/null
+  
+  if [[ ! -e $datadir ]]; then
+    install -dm700 $datadir
+    usr/bin/mysql_install_db --user=mysql --basedir=/usr --datadir=$datadir
+    chown -R mysql:mysql $datadir &>/dev/null
+  fi
+
+  usr/bin/systemd-tmpfiles --create mysqld.conf
+}
+
+post_upgrade(){
+  getent group mysql >/dev/null 2>&1 || groupadd -g 89 mysql &>/dev/null
+  getent passwd mysql >/dev/null 2>&1 || useradd -u 89 -g mysql -d $datadir -s /bin/false mysql &>/dev/null
+
+  if [ "$(vercmp $2 5.5)" -lt 0 ]; then
+    echo " >> "
+    echo " >> Major version update. Consider restart the service, and then running mysql_upgrade after it."
+    echo " >> "
+  fi
+}
+
+post_remove(){
+  if getent passwd mysql >/dev/null 2>&1; then
+    userdel mysql
+  fi
+  if getent group mysql >/dev/null 2>&1; then
+    groupdel mysql
+  fi
+}




More information about the arch-commits mailing list