<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>http://vwiki.co.uk/index.php?action=history&amp;feed=atom&amp;title=MySQL_%28Ubuntu%29</id>
	<title>MySQL (Ubuntu) - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://vwiki.co.uk/index.php?action=history&amp;feed=atom&amp;title=MySQL_%28Ubuntu%29"/>
	<link rel="alternate" type="text/html" href="http://vwiki.co.uk/index.php?title=MySQL_(Ubuntu)&amp;action=history"/>
	<updated>2026-05-02T02:46:51Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>http://vwiki.co.uk/index.php?title=MySQL_(Ubuntu)&amp;diff=1819&amp;oldid=prev</id>
		<title>Sstrutt: Initial creation - content from Ubuntu page</title>
		<link rel="alternate" type="text/html" href="http://vwiki.co.uk/index.php?title=MySQL_(Ubuntu)&amp;diff=1819&amp;oldid=prev"/>
		<updated>2012-04-16T11:35:35Z</updated>

		<summary type="html">&lt;p&gt;Initial creation - content from Ubuntu page&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;This page contains information specific to running &amp;#039;&amp;#039;[[:Category:MySQL|MySQL]] on [[:Category:Ubuntu|Ubuntu]]&amp;#039;&amp;#039;, for information on MySQL generally, see the [[MySQL]] page.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
= Installation =&lt;br /&gt;
# Run the following command to update the package database&lt;br /&gt;
#* &amp;lt;code&amp;gt; apt-get update &amp;lt;/code&amp;gt;&lt;br /&gt;
# Run the following command to install MySQL&lt;br /&gt;
#* &amp;lt;code&amp;gt; apt-get install mysql-server &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To allow access from remote hosts...&lt;br /&gt;
# Open MySQL service TCP/IP port by editing the &amp;lt;code&amp;gt; /etc/mysql/my.cnf &amp;lt;/code&amp;gt; config file and restarting&lt;br /&gt;
#* Change bind IP to server&amp;#039;s IP, EG &amp;lt;code&amp;gt; bind-address = 192.168.1.123 &amp;lt;/code&amp;gt;&lt;br /&gt;
#* Restart service &amp;lt;code&amp;gt; /etc/init.d/mysql restart &amp;lt;/code&amp;gt;&lt;br /&gt;
# Allow remote access to a user account&lt;br /&gt;
#* EG &amp;lt;code&amp;gt; GRANT ALL PRIVILEGES ON *.* TO &amp;#039;user&amp;#039;@&amp;#039;%&amp;#039; IDENTIFIED BY &amp;#039;pass&amp;#039; WITH GRANT OPTION; &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Backup =&lt;br /&gt;
Based on http://www.cyberciti.biz/faq/ubuntu-linux-mysql-nas-ftp-backup-script/&lt;br /&gt;
&lt;br /&gt;
# Create the required folders using...&lt;br /&gt;
#* &amp;lt;code&amp;gt; mkdir backup &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; mkdir backup/mysql &amp;lt;/code&amp;gt;&lt;br /&gt;
# Create the file below (editing as required) as &amp;lt;code&amp;gt; /backup/mysql.sh &amp;lt;/code&amp;gt;&lt;br /&gt;
# Make the file executable&lt;br /&gt;
#* &amp;lt;code&amp;gt; chmod +x /backup/mysql.sh &amp;lt;/code&amp;gt;&lt;br /&gt;
# Perform a test run of the backup&lt;br /&gt;
# Schedule the script to run with crontab&lt;br /&gt;
#* &amp;lt;code&amp;gt; crontab -e &amp;lt;/code&amp;gt;&lt;br /&gt;
#* &amp;lt;code&amp;gt; 30 1 * * *      /bin/bash       /backup/mysql.sh &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
### MySQL Server Login and local backup info ###&lt;br /&gt;
MUSER=&amp;quot;root&amp;quot;&lt;br /&gt;
MPASS=&amp;quot;password&amp;quot;&lt;br /&gt;
MHOST=&amp;quot;localhost&amp;quot;&lt;br /&gt;
MYSQL=&amp;quot;$(which mysql)&amp;quot;&lt;br /&gt;
MYSQLDUMP=&amp;quot;$(which mysqldump)&amp;quot;&lt;br /&gt;
BAK=&amp;quot;/backup/mysql&amp;quot;&lt;br /&gt;
LOG=&amp;quot;/backup/mysql.log&amp;quot;&lt;br /&gt;
GZIP=&amp;quot;$(which gzip)&amp;quot;&lt;br /&gt;
NOW=$(date -u +%Y%m%d)&lt;br /&gt;
&lt;br /&gt;
## FTP info&lt;br /&gt;
FTPDIR=&amp;quot;/Backup/db&amp;quot;&lt;br /&gt;
FTPUSER=&amp;quot;backup&amp;quot;&lt;br /&gt;
FTPPASS=&amp;quot;backup&amp;quot;&lt;br /&gt;
FTPSERVER=&amp;quot;ftphost&amp;quot;&lt;br /&gt;
&lt;br /&gt;
## Functions&lt;br /&gt;
Logger()&lt;br /&gt;
{&lt;br /&gt;
        echo `date &amp;quot;+%a %d/%m/%y %H:%M:%S&amp;quot;`: $1 &amp;gt;&amp;gt; $LOG&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
## Main Script&lt;br /&gt;
Logger &amp;quot;Started backup script...&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[ ! -d $BAK ] &amp;amp;&amp;amp; mkdir -p $BAK&lt;br /&gt;
[ ! -d $BAK/tmp ] &amp;amp;&amp;amp; mkdir -p $BAK/tmp&lt;br /&gt;
mv $BAK/* $BAK/tmp&lt;br /&gt;
&lt;br /&gt;
DBS=&amp;quot;$($MYSQL -u $MUSER -h $MHOST -p$MPASS -Bse &amp;#039;show databases&amp;#039;)&amp;quot;&lt;br /&gt;
for db in $DBS&lt;br /&gt;
do&lt;br /&gt;
 FILE=$BAK/$db.$NOW.gz&lt;br /&gt;
 Logger &amp;quot;Backing up $db to $FILE&amp;quot;&lt;br /&gt;
 $MYSQLDUMP -u $MUSER -h $MHOST -p$MPASS $db | $GZIP -9 &amp;gt; $FILE&lt;br /&gt;
done&lt;br /&gt;
&lt;br /&gt;
Logger &amp;quot;Completed local backup&amp;quot;&lt;br /&gt;
&lt;br /&gt;
## FTP to remote server&lt;br /&gt;
ftp -in &amp;lt;&amp;lt;EOF&lt;br /&gt;
open $FTPSERVER&lt;br /&gt;
user $FTPUSER $FTPPASS&lt;br /&gt;
bin&lt;br /&gt;
cd $FTPDIR&lt;br /&gt;
lcd $BAK&lt;br /&gt;
mput *&lt;br /&gt;
close&lt;br /&gt;
bye&lt;br /&gt;
EOF&lt;br /&gt;
&lt;br /&gt;
if [ &amp;quot;$?&amp;quot; == &amp;quot;0&amp;quot; ]; then&lt;br /&gt;
 Logger &amp;quot;FTP upload completed successfully&amp;quot;&lt;br /&gt;
 /bin/rm -f $BAK/tmp*&lt;br /&gt;
 Logger &amp;quot;Previous local backup files removed&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
 Logger &amp;quot;FTP upload failed !!!&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In some versions of MySQL you will receive an error similar to...&lt;br /&gt;
 mysqldump: Got error: 1044: Access denied for user &amp;#039;root&amp;#039;@&amp;#039;localhost&amp;#039; to database &amp;#039;information_schema&amp;#039; when using LOCK TABLES&lt;br /&gt;
It appears to be a [http://bugs.mysql.com/bug.php?id=21527|MySQL bug], which seems to keep cropping up.  As a workaround change the &amp;lt;code&amp;gt; $MYSQLDUMP &amp;lt;/code&amp;gt; line to  &lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
 $MYSQLDUMP -u $MUSER -h $MHOST -p$MPASS --skip-lock-tables $db | $GZIP -9 &amp;gt; $FILE&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Note that you won&amp;#039;t backup the &amp;lt;code&amp;gt; information_schema &amp;lt;/code&amp;gt; table if you need to implement this workaround&lt;br /&gt;
&lt;br /&gt;
[[Category:MySQL]]&lt;br /&gt;
[[Category:Ubuntu]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>Sstrutt</name></author>
	</entry>
</feed>