Sponsored Content
Top Forums Shell Programming and Scripting MySQL Restoration Backup Script Post 302650927 by Pandoula on Monday 4th of June 2012 01:16:56 PM
Old 06-04-2012
Here's the script. The problem line is in red (error in first post).

Since I'm a n00b, I welcome any security tips in writing this script as well.

Example usage: ./restore.sh 05-20-12 may20 whereby 05-20-12 is a datestamp of the DB file (i.e. backup.05-20-12.sql) and may20 is the database to-be-created in MySQL (that will hold the restored data).

I've been using TextEdit on my Mac (plaintext format, not rich-text) and copying the script into the file via the nano command. Would that be causing a problem, even if TextEdit is in plain-text editing mode?

Code:
#!/bin/sh

cat <<Header
--------------------------------------------------------------------------
-- Database Restoration Utility
-- v1.1
--------------------------------------------------------------------------

Header

######################################################################
# Restore a database all in one script
######################################################################

# Check args
args=("$@")
DBFILE="/home/site/backups/backup.${args[0]}.sql.gz"
echo Looking for file ${DBFILE}...

# Did we find it?
if [ -f $DBFILE ]; then
	echo "File found."
else
	echo "File does not exist.  Database cannot be restored.  Exiting."
	exit 1
fi

######################################################################
# Log in to MySQL, create a database
######################################################################

# mysql commands here
# [...]

######################################################################
# Do database restoration
######################################################################

echo Restoring and importing database...
gunzip /home/site/backups/backup.${args[0]}.sql.gz
mysql -u username -pHASH ${args[1]} < /home/site/backups/backup.${args[0]}.sql

echo Database successfully imported and restored
echo Backup data resides in database ${args[1]}
echo DONE!

exit 1

 

7 More Discussions You Might Find Interesting

1. Solaris

question about restoration from backup tape (solaris 10)

I am trying to restore opt on my server. my issue is, all the partitions are saved into the same back up tape. what is the exact command to just restore /opt for example, supposing c0t0d0s7 is the partition for /opt ---------- Post updated at 01:16 PM ---------- Previous update was at... (7 Replies)
Discussion started by: feg
7 Replies

2. Shell Programming and Scripting

How to backup a particular Database in MYSQL?

Hi All, Thanks in Advance!! How to backup a particular Databases..through Bash script!! For example i have 6 databases; Anish linux Software Questions Rhce Google these are the databases i have from that i want to take "Anish" and "questions" database backup regularly.... (4 Replies)
Discussion started by: anishkumarv
4 Replies

3. Shell Programming and Scripting

Help with perl mysql backup script

Hi, im trying to make a script that backups mysql databases but apparently I am having trouble with the variables, or simply something I am missing. Would appreciate any help, here is the script #!/usr/bin/perl -w use strict; require File::Spec; #VARIABLES my $databasename =... (4 Replies)
Discussion started by: Fireline
4 Replies

4. Shell Programming and Scripting

Need help in creating file restoration script from a backup script.

Hi all i am struggling in creating a restore of env files while doing applications clone. the first file i created for copying the important configurations file which is running perfect now for reverting the changes i mean when i am restoring these files to its original places i have to do... (7 Replies)
Discussion started by: javeedkaleem
7 Replies

5. Shell Programming and Scripting

Script - Mysql backup and delete

Hello I have a production mysql server and archive server, unfortunitly its not possible to setup repliacation between the two, the reason is that the archive server is using some fancy storage engine which doesn't allow mysql replication. I'm trying to write a script using perl that does... (1 Reply)
Discussion started by: amlife
1 Replies

6. Web Development

Restore MySQL backup

Hello all! First posting here! So be patient with me. I made a clean install with MacOS 10.8 and need to restore my Databases from my external backup drive. Apparently it is not possible, to create the MySQL user and password as before, and simply drag the databases from... (12 Replies)
Discussion started by: marek
12 Replies

7. UNIX and Linux Applications

MySQL & OpenLDAP - file level backup

Hi All, The MySQL & OpenLDAP database on my Debian are very lightly updated. Usually I tar everything on / including the databases. The restore works OK on another machine. I want to know whether its safe to do file level backup of databases like this ? Do the MySQL & OpenLDAP databases... (0 Replies)
Discussion started by: coolatt
0 Replies
OPEN(1) 						    BSD General Commands Manual 						   OPEN(1)

NAME
open -- open files and directories SYNOPSIS
open [-e] [-t] [-f] [-F] [-W] [-R] [-n] [-g] [-h] [-b bundle_identifier] [-a application] file ... [--args arg1 ...] DESCRIPTION
The open command opens a file (or a directory or URL), just as if you had double-clicked the file's icon. If no application name is speci- fied, the default application as determined via LaunchServices is used to open the specified files. If the file is in the form of a URL, the file will be opened as a URL. You can specify one or more file names (or pathnames), which are interpreted relative to the shell or Terminal window's current working directory. For example, the following command would open all Word files in the current working directory: open *.doc Opened applications inherit environment variables just as if you had launched the application directly through its full path. This behavior was also present in Tiger. The options are as follows: -a application Specifies the application to use for opening the file -b bundle_indentifier Specifies the bundle identifier for the application to use when opening the file -e Causes the file to be opened with /Applications/TextEdit -t Causes the file to be opened with the default text editor, as determined via LaunchServices -f Reads input from standard input and opens the results in the default text editor. End input by sending EOF character (type Control-D). Also useful for piping output to open and having it open in the default text editor. -F Opens the application "fresh," that is, without restoring windows. Saved persistent state is lost, except for Untitled documents. -W Causes open to wait until the applications it opens (or that were already open) have exited. Use with the -n flag to allow open to func- tion as an appropriate app for the $EDITOR environment variable. -R Reveals the file(s) in the Finder instead of opening them. -n Open a new instance of the application(s) even if one is already running. -g Do not bring the application to the foreground. -h Searches header locations for a header whose name matches the given string and then opens it. Pass a full header name (such as NSView.h) for increased performance. --args All remaining arguments are passed to the opened application in the argv parameter to main(). These arguments are not opened or inter- preted by the open tool. EXAMPLES
"open '/Volumes/Macintosh HD/foo.txt'" opens the document in the default application for its type (as determined by LaunchServices). "open '/Volumes/Macintosh HD/Applications/'" opens that directory in the Finder. "open -a /Applications/TextEdit.app '/Volumes/Macintosh HD/foo.txt'" opens the document in the application specified (in this case, TextE- dit). "open -b com.apple.TextEdit '/Volumes/Macintosh HD/foo.txt'" opens the document in the application specified (in this case, TextEdit). "open -e '/Volumes/Macintosh HD/foo.txt'" opens the document in TextEdit. "ls | open -f" writes the output of the 'ls' command to a file in /tmp and opens the file in the default text editor (as determined by LaunchServices). "open http://www.apple.com/" opens the URL in the default browser. "open 'file://localhost/Volumes/Macintosh HD/foo.txt'" opens the document in the default application for its type (as determined by Launch- Services). "open 'file://localhost/Volumes/Macintosh HD/Applications/'" opens that directory in the Finder. "open -h NSView" lists headers whose names contain NSView and allows you to choose which ones to open. "open -a Xcode -h NSString.h" quickly opens /System/Library/Frameworks/Foundation.framework/Headers/NSString.h in Xcode. HISTORY
First appeared in NextStep. Mac OS X February 10, 2004 Mac OS X
All times are GMT -4. The time now is 01:11 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy