Merge pull request #6384 from micmac1/1806-mariadb

[18.06] mariadb: bump to 10.1.34 + procd init
This commit is contained in:
Hannu Nyman 2018-07-03 19:29:03 +03:00 committed by GitHub
commit 3175b77b6d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 73 additions and 27 deletions

View file

@ -8,7 +8,7 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=mariadb PKG_NAME:=mariadb
PKG_VERSION:=10.1.33 PKG_VERSION:=10.1.34
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
@ -18,7 +18,7 @@ PKG_SOURCE_URL := \
https://ftp.yz.yamagata-u.ac.jp/pub/dbms/mariadb/$(PKG_NAME)-$(PKG_VERSION)/source \ https://ftp.yz.yamagata-u.ac.jp/pub/dbms/mariadb/$(PKG_NAME)-$(PKG_VERSION)/source \
https://downloads.mariadb.org/interstitial/$(PKG_NAME)-$(PKG_VERSION)/source https://downloads.mariadb.org/interstitial/$(PKG_NAME)-$(PKG_VERSION)/source
PKG_HASH:=94312c519f2c0c25e1964c64e22aff0036fb22dfb2685638f43a6b2211395d2d PKG_HASH:=c7e0719fd08790c096585bf867fe87e084b310f2f3679e059e3b10b9fd6d5548
PKG_MAINTAINER:=Sebastian Kemper <sebastian_ml@gmx.net> PKG_MAINTAINER:=Sebastian Kemper <sebastian_ml@gmx.net>
PKG_LICENSE:=GPL-2.0 PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=COPYING PKG_LICENSE_FILES:=COPYING
@ -61,6 +61,8 @@ MARIADB_SERVER_PLUGINS := \
ha_federated \ ha_federated \
ha_federatedx \ ha_federatedx \
ha_innodb \ ha_innodb \
ha_sequence \
ha_sphinx \
ha_spider \ ha_spider \
ha_test_sql_discovery \ ha_test_sql_discovery \
handlersocket \ handlersocket \
@ -103,6 +105,8 @@ plugin-ha_example := PLUGIN_EXAMPLE
plugin-ha_federated := PLUGIN_FEDERATED plugin-ha_federated := PLUGIN_FEDERATED
plugin-ha_federatedx := PLUGIN_FEDERATEDX plugin-ha_federatedx := PLUGIN_FEDERATEDX
plugin-ha_innodb := PLUGIN_INNOBASE plugin-ha_innodb := PLUGIN_INNOBASE
plugin-ha_sequence := PLUGIN_SEQUENCE
plugin-ha_sphinx := PLUGIN_SPHINX
plugin-ha_spider := PLUGIN_SPIDER plugin-ha_spider := PLUGIN_SPIDER
plugin-ha_test_sql_discovery := PLUGIN_TEST_SQL_DISCOVERY plugin-ha_test_sql_discovery := PLUGIN_TEST_SQL_DISCOVERY
plugin-handlersocket := PLUGIN_HANDLERSOCKET plugin-handlersocket := PLUGIN_HANDLERSOCKET
@ -264,6 +268,7 @@ define Package/mariadb-server
TITLE:=MariaDB database core server binaries TITLE:=MariaDB database core server binaries
MENU:=1 MENU:=1
PROVIDES:=mysql-server PROVIDES:=mysql-server
USERID:=mariadb=376:mariadb=376
endef endef
define Package/mariadb-server/description define Package/mariadb-server/description
@ -340,9 +345,10 @@ CMAKE_OPTIONS += \
-DINSTALL_SCRIPTDIR=bin \ -DINSTALL_SCRIPTDIR=bin \
-DINSTALL_SQLBENCHDIR="" \ -DINSTALL_SQLBENCHDIR="" \
-DINSTALL_SUPPORTFILESDIR=share/mysql \ -DINSTALL_SUPPORTFILESDIR=share/mysql \
-DMYSQLD_USER=root \ -DINSTALL_UNIX_ADDRDIR=/var/run/mysqld/mysqld.sock \
-DMYSQLD_USER=mariadb \
-DMYSQL_DATADIR=/var/lib/mysql \ -DMYSQL_DATADIR=/var/lib/mysql \
-DMYSQL_UNIX_ADDR=/var/run/mysqld.sock \ -DMYSQL_UNIX_ADDR=/var/run/mysqld/mysqld.sock \
-DSKIP_TESTS=ON \ -DSKIP_TESTS=ON \
-DWITH_ASAN=OFF \ -DWITH_ASAN=OFF \
-DWITH_EMBEDDED_SERVER=OFF \ -DWITH_EMBEDDED_SERVER=OFF \
@ -371,7 +377,6 @@ CMAKE_OPTIONS += \
-DPLUGIN_MROONGA=NO \ -DPLUGIN_MROONGA=NO \
-DPLUGIN_OQGRAPH=NO \ -DPLUGIN_OQGRAPH=NO \
-DPLUGIN_ROCKSDB=NO \ -DPLUGIN_ROCKSDB=NO \
-DPLUGIN_SPHINX=NO \
-DPLUGIN_TOKUDB=NO \ -DPLUGIN_TOKUDB=NO \
-DPLUGIN_AUTH_PAM=NO \ -DPLUGIN_AUTH_PAM=NO \
-DPLUGIN_AUTH_GSSAPI=NO \ -DPLUGIN_AUTH_GSSAPI=NO \
@ -441,6 +446,10 @@ endef
define Package/mariadb-client/install define Package/mariadb-client/install
$(INSTALL_DIR) $(1)/usr/bin $(INSTALL_DIR) $(1)/usr/bin
$(foreach b,$(MARIADB_CLIENT),$(call Package/mariadb/install/bin,$(1),$(b));) $(foreach b,$(MARIADB_CLIENT),$(call Package/mariadb/install/bin,$(1),$(b));)
# Install convenience links for mysqlcheck multi-call binary
cd $(1)/usr/bin; $(LN) mysqlcheck mysqlanalyze
cd $(1)/usr/bin; $(LN) mysqlcheck mysqlrepair
cd $(1)/usr/bin; $(LN) mysqlcheck mysqloptimize
endef endef
define Package/mariadb-client-extra/install define Package/mariadb-client-extra/install
@ -456,10 +465,12 @@ endef
define Package/mariadb-server/install define Package/mariadb-server/install
$(INSTALL_DIR) $(1)/usr/bin $(INSTALL_DIR) $(1)/usr/bin
$(foreach b,$(MARIADB_SERVER),$(call Package/mariadb/install/bin,$(1),$(b));) $(foreach b,$(MARIADB_SERVER),$(call Package/mariadb/install/bin,$(1),$(b));)
$(INSTALL_DIR) $(1)/etc/default
$(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_DIR) $(1)/etc/mysql/conf.d $(INSTALL_DIR) $(1)/etc/mysql/conf.d
$(INSTALL_BIN) files/mysqld.init $(1)/etc/init.d/mysqld $(INSTALL_BIN) files/mysqld.init $(1)/etc/init.d/mysqld
$(INSTALL_CONF) conf/my.cnf $(1)/etc/mysql $(INSTALL_CONF) conf/my.cnf $(1)/etc/mysql
$(INSTALL_CONF) conf/mysqld.default $(1)/etc/default/mysqld
$(INSTALL_DIR) $(1)$(PLUGIN_DIR) $(INSTALL_DIR) $(1)$(PLUGIN_DIR)
$(INSTALL_CONF) $(PKG_INSTALL_DIR)$(PLUGIN_DIR)/daemon_example.ini $(1)$(PLUGIN_DIR) $(INSTALL_CONF) $(PKG_INSTALL_DIR)$(PLUGIN_DIR)/daemon_example.ini $(1)$(PLUGIN_DIR)
$(INSTALL_DIR) $(1)/usr/share/mysql/english $(INSTALL_DIR) $(1)/usr/share/mysql/english
@ -477,8 +488,9 @@ define Package/mariadb-server-extra/install
endef endef
define Package/mariadb-server/conffiles define Package/mariadb-server/conffiles
/etc/default/mysqld
/etc/mysql/my.cnf /etc/mysql/my.cnf
/usr/lib/mysql/plugin/daemon_example.ini $(PLUGIN_DIR)/daemon_example.ini
endef endef
define BuildPlugin define BuildPlugin
@ -525,9 +537,12 @@ $(eval $(call BuildPlugin,file_key_management,))
$(eval $(call BuildPlugin,ha_archive,)) $(eval $(call BuildPlugin,ha_archive,))
$(eval $(call BuildPlugin,ha_blackhole,)) $(eval $(call BuildPlugin,ha_blackhole,))
$(eval $(call BuildPlugin,ha_connect,+libxml2)) $(eval $(call BuildPlugin,ha_connect,+libxml2))
$(eval $(call BuildPlugin,ha_example,))
$(eval $(call BuildPlugin,ha_federated,)) $(eval $(call BuildPlugin,ha_federated,))
$(eval $(call BuildPlugin,ha_federatedx,)) $(eval $(call BuildPlugin,ha_federatedx,))
$(eval $(call BuildPlugin,ha_innodb,)) $(eval $(call BuildPlugin,ha_innodb,))
$(eval $(call BuildPlugin,ha_sequence,))
$(eval $(call BuildPlugin,ha_sphinx,))
$(eval $(call BuildPlugin,ha_spider,)) $(eval $(call BuildPlugin,ha_spider,))
$(eval $(call BuildPlugin,ha_test_sql_discovery,)) $(eval $(call BuildPlugin,ha_test_sql_discovery,))
$(eval $(call BuildPlugin,handlersocket,)) $(eval $(call BuildPlugin,handlersocket,))

View file

@ -1,10 +1,10 @@
[client] [client]
port = 3306 port = 3306
socket = /var/run/mysqld.sock socket = /var/run/mysqld/mysqld.sock
[mysqld] [mysqld]
user = root user = mariadb
socket = /var/run/mysqld.sock socket = /var/run/mysqld/mysqld.sock
port = 3306 port = 3306
basedir = /usr basedir = /usr
@ -21,7 +21,7 @@ skip-external-locking
bind-address = 127.0.0.1 bind-address = 127.0.0.1
# Fine Tuning # Fine Tuning
key_buffer = 16M key_buffer_size = 16M
max_allowed_packet = 16M max_allowed_packet = 16M
thread_stack = 192K thread_stack = 192K
thread_cache_size = 8 thread_cache_size = 8

View file

@ -0,0 +1,10 @@
# The user and group that will run the MySQL server. The user mariadb is
# automatically created by the mariadb-server package, hence that is the
# default choice.
#MY_USER=mariadb
#MY_GROUP=mariadb
# Additional arguments you want to pass to the MySQL server.
#MY_ARGS=""

View file

@ -1,32 +1,53 @@
#!/bin/sh /etc/rc.common #!/bin/sh /etc/rc.common
# Copyright (C) 2010-2011 OpenWrt.org # Copyright (C) 2010-2018 OpenWrt.org
START=95 START=95
STOP=10 STOP=10
SERVICE_DAEMONIZE=1 USE_PROCD=1
SERVICE_WRITE_PID=1
SERVICE_STOP_TIME=9
PROG='/usr/bin/mysqld'
start() { #PROCD_DEBUG=1
MYSQLD=mysqld
DEFAULT=/etc/default/$MYSQLD
LOGGER="/usr/bin/logger -p user.err -s -t $MYSQLD"
PROG=/usr/bin/$MYSQLD
unset MY_ARGS MY_GROUP MY_USER
[ -f $DEFAULT ] && . $DEFAULT
my_user="${MY_USER:-mariadb}"
my_group="${MY_GROUP:-mariadb}"
start_service() {
local conf='/etc/mysql/my.cnf' local conf='/etc/mysql/my.cnf'
local datadir="$( sed -nE "s/^\s*datadir\s*=\s*('([^']*)'|\x22([^\x22]*)\x22|(.*\S))\s*$/\2\3\4/p" "$conf" )" local datadir="$( sed -nE "s/^\s*datadir\s*=\s*('([^']*)'|\x22([^\x22]*)\x22|(.*\S))\s*$/\2\3\4/p" "$conf" )"
[ -d "$datadir" ] || { [ -d "$datadir" ] || {
logger -s "[ERROR] datadir '$datadir' in '$conf' does not exist" $LOGGER "datadir '$datadir' in '$conf' does not exist"
return 1 return 1
} }
[ -f "$datadir/mysql/tables_priv.MYD" ] || { [ -f "$datadir/mysql/tables_priv.MYD" ] || {
logger -s "[ERROR] can not detect privileges table, you might need to" $LOGGER "cannot detect privileges table, you might need to"
logger -s "run 'mysql_install_db --force' to initialize the system tables" $LOGGER "run 'mysql_install_db --force' to initialize the system tables"
return 1 return 1
} }
service_start "$PROG" mkdir -p /var/lib/mysql
} chown "$my_user":"$my_group" /var/lib/mysql
stop() { mkdir -p /var/run/mysqld
service_stop "$PROG" chown "$my_user":"$my_group" /var/run/mysqld
procd_open_instance
procd_set_param command $PROG $MY_ARGS
procd_set_param pidfile /var/run/mysqld.pid
# forward stderr to logd
procd_set_param stderr 1
procd_close_instance
} }