<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>TheGarage Tech Blog &#187; MySQL</title>
	<atom:link href="http://garagetechblog.com/tag/mysql-lamp/feed/" rel="self" type="application/rss+xml" />
	<link>http://garagetechblog.com</link>
	<description>Tech projects from the corner of a suburban garage</description>
	<lastBuildDate>Sat, 04 Sep 2010 13:07:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>MySQL Upgrade: 1and1 is not the best host in the world</title>
		<link>http://garagetechblog.com/2009/03/03/mysql-upgrade-1and1-is-not-the-best-host-in-the-world/</link>
		<comments>http://garagetechblog.com/2009/03/03/mysql-upgrade-1and1-is-not-the-best-host-in-the-world/#comments</comments>
		<pubDate>Tue, 03 Mar 2009 13:11:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Infrastructure]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[1and1]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[upgrade]]></category>

		<guid isPermaLink="false">http://garagetechblog.com/?p=405</guid>
		<description><![CDATA[Last night I upgraded the MySQL database behind this site from version 4 to 5. I needed to test the process before I upgrade the Gulf Coast Texas Magazine site. If I dig around in the documentation at 1and1 I could probably tell from which version to which, but the options on the setup menu [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-407" style="border: 1px solid black;margin: 5px" src="http://garagetechblog.com/files/2009/03/mwsqladmin.jpg" alt="mysqladmin" width="152" height="89" />Last night I upgraded the MySQL database behind this site from version 4 to 5. I needed to test the process before I upgrade the <a href="http://gulfcoasttexas.us/">Gulf Coast Texas Magazine site</a>. If I dig around in the documentation at 1and1 I could probably tell from which version to which, but the options on the setup menu are MySQL 4 or MySQL 5.  Suffice to say the version 4  was low enough that the<a href="http://simplepressforum.com/"> Simple:Press forum plugin</a> for WordPress wouldn&#8217;t install. Even if I don&#8217;t ultimately use the plugin, I simply <em>have</em> to look under the hood of that bad boy.</p>
<p>The worst thing about the whole MySQL upgrade process &#8212; which involves dumping the schema and data from the version 4 database into a SQL file and then running the SQL dump on a new, empty MySQL version 5 database &#8212; was that 1and1 had difficulty managing the upload of the SQL dump file and then running the SQL. When I uploaded the file it took forever and finally reported complete but there were no tables &#8212; still an empty database. I tried it twice. Took forever twice. Twice no tables.</p>
<p>So I manually split the SQL dump file into several little chunks and built the version 5 database a wee bit at a time. How ridiculous is that when the entire process should have taken five minutes, ten at the most, but your hosting service provider sucks so bad that the job required a couple of hours. Hard for a developer to make money that wy.</p>
<p>It says in the 1and1 documentation:</p>
<blockquote><p><strong>Note:</strong> If the database export does not work correctly you can try to export one table at a time. Select the table from the left side of the MySQL Administration screen and click <strong>Export</strong>.</p></blockquote>
<p>Lame. So I guess I&#8217;m not surprised. How hard could it be to simply make the feature work?</p>
<p>The faq&#8217;s that I found confirming that there is no automatic process to upgrade a database are hard to find on the 1and1 search, you need to use another, real  search engine to find the information. You can check these if interested in the 1and1 MySQL upgrade process &#8211;&gt; <a href="http://faq.1and1.com/applications/mysql_administration/9.html">Export</a>, <a href="http://faq.1and1.com/applications/mysql_administration/using_11_mysql_administration_center_phpmyadmin/6.html">Import</a></p>
<p>But here is the real complaint. After the long ordeal descibed above I finally had the entire database loaded so I edited my wp-config to point to the new database and it&#8217;s like nothing ever happened&#8230; Except that there seems to be a bunch of funny capital A&#8217;s with little hats  all throughout the text of every post. And that sucks.</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://garagetechblog.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://garagetechblog.com/2009/03/03/mysql-upgrade-1and1-is-not-the-best-host-in-the-world/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Get a list of MySQL tables</title>
		<link>http://garagetechblog.com/2009/02/14/get-a-list-of-mysql-tables/</link>
		<comments>http://garagetechblog.com/2009/02/14/get-a-list-of-mysql-tables/#comments</comments>
		<pubDate>Sat, 14 Feb 2009 23:29:02 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[reference]]></category>
		<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://garagetechblog.com/?p=365</guid>
		<description><![CDATA[If you ever need to access the system wide schema info for a MySQL server, check out this very nice diagram of the MySQL Information_Schema. What can you do with this information? Well, lots of stuff. For example you can get a list of tables and columns for a particular database, like SELECT table_name, column_name, [...]]]></description>
			<content:encoded><![CDATA[<p>If you ever need to access the system wide schema info for a MySQL server, check out this <a href="http://www.xcdsql.org/MySQL/information_schema/5.1/MySQL_5_1_INFORMATION_SCHEMA.html">very nice diagram of the MySQL Information_Schema</a>.</p>
<p>What can you do with this information? Well, lots of stuff. For example you can get a list of tables and columns for a particular database, like</p>
<p>SELECT table_name, column_name, data_type [,...]<br />
FROM information_schema.columns<br />
WHERE table_schema = dbname;</p>
<p>Which could be handy for any number of reasons, such as seeing if a table or exists or if a column exists in a table, etc.</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://garagetechblog.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://garagetechblog.com/2009/02/14/get-a-list-of-mysql-tables/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why execute php from a WordPress Mu post</title>
		<link>http://garagetechblog.com/2009/02/13/why-execute-php-from-a-wordpress-mu-post/</link>
		<comments>http://garagetechblog.com/2009/02/13/why-execute-php-from-a-wordpress-mu-post/#comments</comments>
		<pubDate>Fri, 13 Feb 2009 13:29:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Wordpress/Mu]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[blogging]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://garagetechblog.com/?p=358</guid>
		<description><![CDATA[In the previous post I mentioned some issues with injecting php into a WordPress Mu blog post. Some people probably don&#8217;t understand why would you want to execute php code from inside a blog post. Well the most obvious answer now that I&#8217;ve done some research and what seems to be the primary concern of [...]]]></description>
			<content:encoded><![CDATA[<p>In the <a href="http://garagetechblog.com/2009/02/12/huh-no-embeded-video-in-wordpress-mu/">previous post</a> I mentioned some issues with injecting php into a WordPress Mu blog post. Some people probably don&#8217;t understand why would you want to execute php code from inside a blog post. Well the most obvious answer now that I&#8217;ve done some research and what seems to be the primary concern of <a href="http://bavatuesdays.com/">Jim Groom</a> and the many followers of the issue is the ability to configure and display dynamically aggregated RSS feeds for posts as well as doing some fancy stuff in the widgets. I can imagine the possibilities are endless.</p>
<p>But the obvious reason isn&#8217;t what initially got me started on the search to execute php from inside a post or page. I want to be able to add a set of custom fields to certain categories of posts and then execute sql commands against them. For example on an outdoor photography blog, for all posts in the &#8216;Trip Report&#8217; category  I might add some fields called &#8216;location&#8217;,Â  &#8216;mileage&#8217;, &#8216;meals&#8217;, &#8216;fuel&#8217;, &#8216;other_expenses&#8217;.Â  Then I could have a page called &#8216;Trip Expenses&#8217; that would query all the Trip Report posts and display the results in tables, charts, and/or graphs. A WordPress page with embedded php could createÂ  fancy charts and graphs laid out however you like, like the Quickbooks dashboard, for example.Â  The page would re-calculate every time it&#8217;s opened. How sweet is that?</p>
<p>Another example:Â  On a blog chronicling a fitness program I could add custom fields to the &#8216;Daily Workout&#8217; posts like &#8216;exercise_type&#8217;, &#8216;total_distance&#8217;, &#8216;total_time&#8217;, &#8217;5k_time&#8217;, &#8216;peak_heart_rate&#8217;, &#8216;two_min_recovery_heart_rate&#8217;, &#8216;etc&#8230;&#8217;. Then I could have a Page called &#8216;Treadmill Progress Report&#8217; or &#8216;Bench Press Progress Report&#8217; that spits out graphs based on the fields in all the Daily Workout posts.</p>
<p>Using this technique you could easily build simple database applications within a wordpress blog. You could also build large, complex applications like this but that would be silly, wouldn&#8217;t it?</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://garagetechblog.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://garagetechblog.com/2009/02/13/why-execute-php-from-a-wordpress-mu-post/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Managing a vast media empire</title>
		<link>http://garagetechblog.com/2007/08/25/managing-a-vast-media-empire/</link>
		<comments>http://garagetechblog.com/2007/08/25/managing-a-vast-media-empire/#comments</comments>
		<pubDate>Sat, 25 Aug 2007 13:28:10 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Infrastructure]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[1and1]]></category>
		<category><![CDATA[dell poweredge]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[phpMyAdmin]]></category>
		<category><![CDATA[TheGarage]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://www.computergeniuswwff.com/blog/2007/08/25/managing-a-vast-media-empire/</guid>
		<description><![CDATA[I still have some work to do on the infrastructure changes I&#8217;ve been making over the last several weeks. First, let me recap what I&#8217;ve done so far. I bought a hosted account where I have ample space on a Linux server. I can use the provider&#8217;s packaged services or I can load my own. [...]]]></description>
			<content:encoded><![CDATA[<p>I still have some work to do on the infrastructure changes I&#8217;ve been making over the last several weeks. First, let me recap what I&#8217;ve done so far.</p>
<p>I bought a hosted account where I have ample space on a Linux server. I can use the provider&#8217;s packaged services or I can load my own. I am using the MySQL service and phpMyAdmin utility which is provided with the account, including up to fifty databases. Each database can only be 100 MB so that may have to be upgraded eventually.</p>
<p>I passed on the blogging software offered by&nbsp;<a href="http://1and1.com" title="http://1and1. " target="_blank">1and1.com</a> and loaded WordPress for my content management system. As a test I saved several categories of technical and business related blog posts from incongruities as .xml files that I could then import into WordPress. WordPress did a pretty good job of importing those articles considering I know the <a title="xml reference" href="http://www.w3.org/TR/REC-xml/">xml</a> was not <a title="Well formed xml" href="http://www.developer.com/tech/article.php/797861">well-formed</a>.</p>
<p>After the import process worked so well on the test I decided to move my  blogs and point my domains to&nbsp;<a href="http://1and1.com" title="http://1and1. " target="_blank">1and1.com</a>. I activated this blog first and it was a simple affair because I bought the domain name from&nbsp;<a href="http://1and1.com" title="http://1and1. " target="_blank">1and1.com</a>.</p>
<p>Then I set out to move incongruities from Domainsite&#8217;s DNS servers with as little work as possible. The first idea, which was the simplest and one I should probably have skipped because it didn&#8217;t work, was to forward the domain name to 1and1 with a masked URL, meaning that the URL would still start with my domain name after the request was forwarded to the new address.</p>
<p>I got that configuration working but only half-assed, then I somehow trashed it completely. At that point I went back to what was probably the best simple option which was to change the DNS entries of incongruities to point to 1and1. After doing that I set up a virtual host entry in my apache configuration at 1and1 and pointed it to my webspace directory holding the WordPress installation for incongruities.</p>
<p>All the while this is going on I am switching my internet provider here at the house. I finally have a high speed  cable connection that knocks the old DSL in the dust which  means I have a new IP address here in the garage. To complete that change  I had edit the A and MX DNS records for&nbsp;<a href="http://doncallaway.org" title="http://doncallaway. " target="_blank">doncallaway.org</a> to point to the new IP. My web server and mail server here in TheGarage will still be handling http and SMTP requests for&nbsp;<a href="http://doncallaway.org" title="http://doncallaway. " target="_blank">doncallaway.org</a>.</p>
<p>In summary, so far I have installed WordPress on a remote host, converted and moved two blogs and one website to the remote host along with the MySQL databases that go with the blogs, and I have switched Internet service providers at the house. Though it doesn&#8217;t sound like much, it has taken my spare time over the course of several weeks to accomplish.</p>
<p><strong>FINAL GOALS:</strong></p>
<p>I still have at least three blogs and a substantial photo gallery to move to the hosted environment.  One of the blogs is in Blogger and the other two are here in TheGarage. Of the two here in TheGarage, one is a photoblog so I have to figure out how to move all the images with the appropriate linkage.</p>
<p>After I finish all that I will have totally redone the way I operate my vast publishing empire. Only archives and backups&#8230; and a sandbox, oh and a mail server will remain here in TheGarage. Everything else will be hosted off site.</p>
<p>I will have bandwidth. I will have uptime. I will have industry standard software. I will be taking a big doo in high cotton.</p>
<p>One of the by-products of this move is that I will be able to decommission a few pieces of aging equipment that should have  been put to pasture years ago&#8211;most notably the relic Dell Poweredge 6300 workhorse. Even though the Dell would make the perfect sandbox it is just too big, too noisy, too hot, and too expensive to operate. In other words it will make a perfect boat anchor as well.</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://garagetechblog.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://garagetechblog.com/2007/08/25/managing-a-vast-media-empire/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
