mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-29 01:46:31 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			82 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			82 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
| #!/bin/bash
 | |
| # Copyright (c) 2015, Daniel Black. All rights reserved.
 | |
| #
 | |
| # 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; version 2 of the License.
 | |
| #
 | |
| # 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335  USA
 | |
| #
 | |
| # PURPOSE:
 | |
| #
 | |
| # Used to generate a mariadb.service file based on the current mysql/mariadb settings
 | |
| #
 | |
| # This is to assist distro maintainers in migrating to systemd service definations from
 | |
| # a user mysqld_safe settings in the my.cnf files.
 | |
| #
 | |
| # Redirect output to user directory like /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf
 | |
| 
 | |
| tz_old=$TZ
 | |
| 
 | |
| . /usr/bin/mariadbd-safe --dry-run
 | |
| 
 | |
| echo "# converted using $0"
 | |
| echo "#"
 | |
| echo
 | |
| 
 | |
| echo '[Service]'
 | |
| 
 | |
| echo
 | |
| 
 | |
| 
 | |
| if [[ ( ! -z "$user" && "$user" != "root" && "$user" != "mysql" ) || "${SET_USER}" == 1 ]]; then
 | |
|   echo User=$user
 | |
| fi
 | |
| 
 | |
| 
 | |
| [ -n "${open_files}" ] && echo LimitNOFILE=$open_files
 | |
| [ -n "${core_file_size}" ] && echo LimitCORE=$core_file_size
 | |
| [[ "${niceness}" -gt 0 ]] && echo Nice=$niceness
 | |
| [ "${TZ}" != "${tz_old}" ] && echo Environment=\"TZ=${TZ}\"
 | |
| 
 | |
| if [ -n "$mysqld_ld_preload" ]; then
 | |
|   new_text="$mysqld_ld_preload"
 | |
|   [ -n "$LD_PRELOAD" ] && new_text="$new_text $LD_PRELOAD"
 | |
|   echo Environment=\"LD_PRELOAD=`shell_quote_string "$new_text"`\"
 | |
| fi
 | |
| 
 | |
| if [ -n "$mysqld_ld_library_path" ]; then
 | |
|   new_text="$mysqld_ld_library_path"
 | |
|   [ -n "$LD_LIBRARY_PATH" ] && new_text="$new_text:$LD_LIBRARY_PATH"
 | |
|   echo Environment=\"LD_LIBRARY_PATH=`shell_quote_string "$new_text"`\"
 | |
| fi
 | |
| 
 | |
| if [[ $want_syslog -eq 1 ]]; then
 | |
|   echo StandardOutput=syslog
 | |
|   echo StandardError=syslog
 | |
|   echo SyslogFacility=daemon
 | |
|   echo SyslogLevel=err
 | |
|   echo SyslogIdentifier=${syslog_tag_mysqld}
 | |
| fi
 | |
| 
 | |
| if [[ "${flush_caches}" -gt 0  ]]; then
 | |
|   echo ExecStartPre=/usr/bin/sync
 | |
|   echo ExecStartPre=/usr/sbin/sysctl -q -w vm.drop_caches=3
 | |
| fi
 | |
| 
 | |
| if [[ "${numa_interleave}" -gt 0 ]]; then
 | |
|   echo
 | |
|   echo ExecStart=/usr/bin/numactl --interleave=all ${cmd} '${MYSQLD_OPTS}'
 | |
|   echo
 | |
| fi
 | |
| 
 | |
| if [ -n "${CRASH_SCRIPT}" ]; then
 | |
|   echo FailureAction=${CRASH_SCRIPT}
 | |
| fi
 | 
