<?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>PlanetMysql.ru - информация о СУБД MySQL &#187; cloud</title>
	<atom:link href="http://planetmysql.ru/category/cloud/feed/" rel="self" type="application/rss+xml" />
	<link>http://planetmysql.ru</link>
	<description>Блог о самой популярной СУБД MySQL</description>
	<lastBuildDate>Thu, 24 May 2012 14:20:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Install and configure MySQL on EC2 with RedHat Linux</title>
		<link>http://www.dbasquare.com/2012/05/22/install-and-configure-mysql-on-ec2-with-redhat-linux/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=install-and-configure-mysql-on-ec2-with-redhat-linux</link>
		<comments>http://www.dbasquare.com/2012/05/22/install-and-configure-mysql-on-ec2-with-redhat-linux/#comments</comments>
		<pubDate>Tue, 22 May 2012 20:46:57 +0000</pubDate>
		<dc:creator>dba square</dc:creator>
				<category><![CDATA[admin]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[Managing MySQL]]></category>

		<guid isPermaLink="false">http://www.dbasquare.com/?p=2055</guid>
		<description><![CDATA[Recently I had to turn a few EC2 instances into MySQL database servers. The third time I had to do it, I grabbed the list of steps from my previous sessions and just replayed it. Later I thought maybe polishing information a little bit and publishing a step-by-step walkthrough on the blog may help a few people. So here it is.

Before you begin.
For my MySQL instances I used the following:

Extra Large, High-Memory, and High-CPU instances. Although the instruction should work on any type of instance.
RedHat Enterprise Linux 6.2 64-bit AMI
For MySQL data storage, multiple identical EBS devices attached to each instance

The configuration template provided in this post assumes the new MySQL instance only needs InnoDB storage engine.
Grab the packages.
Download the appropriate packages from MySQL web page. You will need client, shared-compat, and server. For example:

MySQL-client-5.5.24-1.el6.x86_64.rpm
MySQL-server-5.5.24-1.el6.x86_64.rpm
MySQL-shared-compat-5.5.24-1.el6.x86_64.rpm
Make sure the packages you downloaded are for a 64-bit architecture. You could of course choose packages from other vendors as the change should not affect the process in any relevant way.
Install MySQL
Remove the MySQL libraries that have been shipped with the system and install the new client and library packages:

[root@ip-10-238-234-26 ~]# rpm -e --nodeps mysql-libs
[root@ip-10-238-234-26 ~]# rpm -ihv MySQL-client-5.5.24-1.el6.x86_64.rpm MySQL-shared-compat-5.5.24-1.el6.x86_64.rpm
Preparing...                ########################################### [100%]
   1:MySQL-shared-compat    ########################################### [ 50%]
   2:MySQL-client           ########################################### [100%]

Then install the server package:

[root@ip-10-238-234-26 ~]# rpm -ihv MySQL-server-5.5.24-1.el6.x86_64.rpm
Preparing...                ########################################### [100%]
   1:MySQL-server           ########################################### [100%]

Search for EBS volumes.
Examine system to find the EBS volumes you will use for MySQL storage. 

[root@ip-10-32-2-145 ~]# dmesg &#124; grep 'unknown partition'
 xvds: unknown partition table
 xvdt: unknown partition table
 xvds: unknown partition table
 xvdt: unknown partition table

Please keep in mind some of the disks reported may be EC2 ephemeral storage, which you typically do not want to use for MySQL data, so make sure to only use EBS volumes in the following steps. If you are uncertain what is what, you can call fdisk -l and check the disk sizes:

[root@ip-10-32-2-145 ~]# fdisk -l

Disk /dev/xvde1: 6442 MB, 6442450944 bytes
255 heads, 63 sectors/track, 783 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
[..]

Create partitions.
Create a new partition on the first disk.

[root@ip-10-32-2-145 ~]# fdisk /dev/xvds
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x3774dc60.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-54823, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-54823, default 54823):
Using default value 54823

Command (m for help): t
Selected partition 1
Hex code (type L to list codes): fd
Changed system type of partition 1 to fd (Linux raid autodetect)

Command (m for help): wq
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

Assuming you created several identical EBS volumes, duplicate the partition table onto each.

[root@ip-10-32-2-145 ~]# sfdisk -d /dev/xvds &#124;  sfdisk /dev/xvdt
Checking that no-one is using this disk right now ...
OK

Disk /dev/xvdt: 54823 cylinders, 255 heads, 63 sectors/track

sfdisk: ERROR: sector 0 does not have an msdos signature
 /dev/xvdt: unrecognized partition table type
Old situation:
No partitions found
New situation:
Units = sectors of 512 bytes, counting from 0

   Device Boot    Start       End   #sectors  Id  System
/dev/xvdt1            63 880731494  880731432  fd  Linux raid autodetect
/dev/xvdt2             0         -          0   0  Empty
/dev/xvdt3             0         -          0   0  Empty
/dev/xvdt4             0         -          0   0  Empty
Warning: no primary partition is marked bootable (active)
This does not matter for LILO, but the DOS MBR will not boot this disk.
Successfully wrote the new partition table

Re-reading the partition table ...

If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)
to zero the first 512 bytes:  dd if=/dev/zero of=/dev/foo7 bs=512 count=1
(See fdisk(8).)

Verify partitions.

[root@ip-10-32-2-145 ~]# fdisk -l &#124; grep -E '^/dev/xvd'
[..]
/dev/xvds1               1       54823   440365716   fd  Linux raid autodetect
/dev/xvdt1               1       54823   440365716   fd  Linux raid autodetect

Create RAID volume.
Create a new RAID level 0 volume over all EBS partitions. Use relatively large chunk size &#8211; 128KB or 256KB should be good choices.

[root@ip-10-32-2-145 ~]# mdadm -C /dev/md0 --chunk=256 -n 2 -l 0 /dev/xvds1 /dev/xvdt1
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

Save the md array configuration.

[root@ip-10-32-2-145 ~]# echo 'DEVICE /dev/xvds1 /dev/xvdt1' &#62;&#62; /etc/mdadm.conf
[root@ip-10-32-2-145 ~]# mdadm --examine --scan &#62;&#62; /etc/mdadm.conf

Here is what the file should look like

[root@ip-10-32-2-145 ~]# cat /etc/mdadm.conf
DEVICE /dev/xvds1 /dev/xvdt1
ARRAY /dev/md/0 metadata=1.2 UUID=f7d5b2e7:495efeb3:26297d34:7be87159 name=ip-10-32-2-145:0

Rebuild the initramfs image.
If this is not done, system won&#8217;t see the new /etc/mdadm.conf contents during boot and md device may be renamed to something else.

[root@ip-10-32-2-145 ~]# mkinitrd --force /boot/initramfs-2.6.32-220.el6.x86_64.img 2.6.32-220.el6.x86_64

You have to use the initramfs file and kernel version that are appropriate for your system. You can list /boot directory contents to figure this out:

[root@ip-10-226-155-162 ~]# ls -1 /boot/
config-2.6.32-220.el6.x86_64
efi
grub
initramfs-2.6.32-220.el6.x86_64.img
symvers-2.6.32-220.el6.x86_64.gz
System.map-2.6.32-220.el6.x86_64
vmlinuz-2.6.32-220.el6.x86_64

Create filesystem.
This part may take a while depending on the volume size.

[root@ip-10-32-2-145 ~]# mkfs.ext4 /dev/md0
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=64 blocks, Stripe width=128 blocks
55050240 inodes, 220182272 blocks
11009113 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
6720 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
        102400000, 214990848

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 36 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

Create a mount point.
I do not like mounting to /var/lib/mysql directly. Typically I create a new directory inside /vol, or /mnt, or /data.

[root@ip-10-32-2-145 ~]# mkdir -p /vol/mysql

Store the filesystem information.
Always use noauto option during installation. It skips automatic filesystem mounting during system init, which can save you from a lot of trouble if something does not work for any reason and when the boot process hangs on this step. EC2 does not come with a system console that would allow rescuing a system from such state. 

[root@ip-10-32-2-145 ~]# echo '/dev/md0   /vol/mysql   ext4   rw,nobarrier,noatime,nodiratime,noauto   0 0' &#62;&#62; /etc/fstab

It may actually be very reasonable to keep noauto there forever and either mount the database volume manually each time the server reboots (it implies you also have to start MySQL manually) or implement volume mounting in a way that does not block the instance in case of some errors.
Mount the new volume.
This command can now use the configuration from /etc/fstab.

[root@ip-10-32-2-145 ~]# mount /vol/mysql

The command should not return anything, but to make sure it worked, just run a quick check whether the volume was acutally mounted or not:

[root@ip-10-32-2-145 ~]# df -h /vol/mysql
Filesystem            Size  Used Avail Use% Mounted on
/dev/md0              827G  201M  785G   1% /vol/mysql

Mounted on should point the new mount point and not to / for example.
Move the default data directory.
Move into the new location the default MySQL data directory created by the MySQL-server package installtion. Also create a directory for MySQL logs.

[root@ip-10-32-2-145 ~]# mv /var/lib/mysql /vol/mysql/
[root@ip-10-32-2-145 ~]# ln -s /vol/mysql/mysql /var/lib/mysql
[root@ip-10-32-2-145 ~]# mkdir /vol/mysql/log
[root@ip-10-32-2-145 ~]# chown mysql:mysql /vol/mysql/log

Set swappiness to prevent unnecessary swapping.
You can refer to this article for more details on swappiness.

[root@ip-10-32-2-145 ~]# echo 'vm.swappiness = 0' &#62;&#62; /etc/sysctl.conf
[root@ip-10-32-2-145 ~]# sysctl -p /etc/sysctl.conf

Configure time synchronization.
Create a new file called ntpdate in /etc/cron.daily with the following contents:

#!/bin/sh

/usr/sbin/ntpdate pool.ntp.org 1&#62; /dev/null 2&#62;&#038;1

Then set the file permissions:

[root@ip-10-32-2-145 ~]# chmod +x /etc/cron.daily/ntpdate

Disable or configure SELinux.
RedHat comes with SELinux enabled, but often SELinux will be disabled during a database server installation process. To disable, perform the following:

[root@ip-10-32-2-145 ~]# cd /etc/sysconfig/
[root@ip-10-32-2-145 sysconfig]# replace 'SELINUX=enforcing' 'SELINUX=disabled' -- selinux
selinux converted

Restart the system.
It is time to restart the system. You should do this for two reasons:

You want to verify if the RAID volume loads correctly after a restart and that MySQL data volume can be mounted again without any problems.
You disabled SELinux and it is also the only way to make the change effective.

Verify md array stats and SELinux status.
Once the system boots again, verify the md array status.

[root@ip-10-32-2-145 ~]# cat /proc/mdstat
Personalities : [raid0]
md0 : active raid0 xvds1[0] xvdt1[1]
      880729088 blocks super 1.2 256k chunks

unused devices: 

It should still say md0 if you regenerated the initramfs image.
If you disabled SELinux, verify that as well.

[root@ip-10-32-2-145 ~]# selinuxenabled
[root@ip-10-32-2-145 ~]# echo $?
1

selinuxenabled indicates whether SELinux is enabled or disabled. It returns 0 if SELinux is enabled and 1 if it is not enabled.
Mount data volume.

[root@ip-10-32-2-145 ~]# mount /vol/mysql
[root@ip-10-32-2-145 ~]# df -h /vol/mysql
Filesystem            Size  Used Avail Use% Mounted on
/dev/md0              827G  201M  785G   1% /vol/mysql

If you want, now you can remove noauto from /etc/fstab.
Create MySQL configuration file.
I sometimes use this simple script that writes a good default configuration into /etc/my.cnf. It auto-tunes a few parameters that commonly need customization. You could just copy-paste it into the command line and run.

(cat &#60;&#60;EOF
[mysqld_safe]
log-error = /vol/mysql/log/mysql-error.log

[mysqld]
user = mysql
port = 3306
socket = /vol/mysql/mysql/mysql.sock

datadir = /vol/mysql/mysql
tmpdir = /tmp
pid-file = /vol/mysql/mysql/mysql.pid

character-set-server = utf8

slow-query-log
slow_query_log_file = /vol/mysql/log/mysql-slow.log
long_query_time = 10

log-bin = /vol/mysql/log/mysql-bin
relay-log = /vol/mysql/log/mysql-relay
server-id = $(/bin/hostname &#124; /usr/bin/md5sum &#124; /usr/bin/awk --non-decimal-data '{ hex=substr($1, 24, 8); printf ("0x"hex)+0 }')

back_log = 50
max_connections = 500
max_connect_errors = 100
skip-name-resolve

key_buffer_size = 8M
sort_buffer_size = 2M
read_rnd_buffer_size = 4M
bulk_insert_buffer_size = 8M
max_allowed_packet = 16M
max_heap_table_size = 64M
tmp_table_size = 64M

table_open_cache = 2048
thread_cache_size = 16

innodb_file_per_table
innodb_data_file_path = ibdata1:128M:autoextend
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DIRECT
innodb_log_buffer_size = 16M
innodb_buffer_pool_size = $(/usr/bin/awk '/MemTotal:/ { printf "%.0fM\n", ($2*0.70)/1024 }' /proc/meminfo)
innodb_log_file_size = 512M
innodb_log_files_in_group = 2
innodb_read_io_threads = $(($(/bin/grep -E 'md[0-9]+ : active raid0' /proc/mdstat &#124; wc -w) - 2))
innodb_write_io_threads = $(($(/bin/grep -E 'md[0-9]+ : active raid0' /proc/mdstat &#124; wc -w) - 2))
innodb_io_capacity = $((($(/bin/grep -E 'md[0-9]+ : active raid0' /proc/mdstat &#124; wc -w) - 4 ) * 130))
innodb_thread_concurrency = 0

[mysql]
no-auto-rehash
socket=/vol/mysql/mysql/mysql.sock

[client]
socket=/vol/mysql/mysql/mysql.sock

EOF
) &#62; /etc/my.cnf

Remember this is just a template. Each server may need individual adjustments to database configuration.
It&#8217;s done.
You can now start MySQL.

[root@ip-10-32-2-145 ~]# /etc/init.d/mysql start
Starting MySQL (Percona Server)........................     [OK]]]></description>
			<content:encoded><![CDATA[<p>Recently I had to turn a few EC2 instances into MySQL database servers. The third time I had to do it, I grabbed the list of steps from my previous sessions and just replayed it. Later I thought maybe polishing information a little bit and publishing a step-by-step walkthrough on the blog may help a few people. So here it is.</p>
<p><span></span></p>
<h5>Before you begin.</h5>
<p>For my MySQL instances I used the following:</p>
<ul>
<li>Extra Large, High-Memory, and High-CPU instances. Although the instruction should work on any type of instance.</li>
<li>RedHat Enterprise Linux 6.2 64-bit AMI</li>
<li>For MySQL data storage, multiple identical EBS devices attached to each instance</li>
</ul>
<p>The configuration template provided in this post assumes the new MySQL instance only needs InnoDB storage engine.</p>
<h5>Grab the packages.</h5>
<p>Download the appropriate packages from <a href="http://www.mysql.com/" title="MySQL Home" rel="nofollow" >MySQL web page</a>. You will need <em>client</em>, <em>shared-compat</em>, and <em>server</em>. For example:<br />
<code><br />
MySQL-client-5.5.24-1.el6.x86_64.rpm<br />
MySQL-server-5.5.24-1.el6.x86_64.rpm<br />
MySQL-shared-compat-5.5.24-1.el6.x86_64.rpm</code></p>
<p>Make sure the packages you downloaded are for a 64-bit architecture. You could of course choose packages from other vendors as the change should not affect the process in any relevant way.</p>
<h5>Install MySQL</h5>
<p>Remove the MySQL libraries that have been shipped with the system and install the new client and library packages:</p>
<pre>
[root@ip-10-238-234-26 ~]# <span>rpm -e --nodeps mysql-libs</span>
[root@ip-10-238-234-26 ~]# <span>rpm -ihv MySQL-client-5.5.24-1.el6.x86_64.rpm MySQL-shared-compat-5.5.24-1.el6.x86_64.rpm</span>
Preparing...                ########################################### [100%]
   1:MySQL-shared-compat    ########################################### [ 50%]
   2:MySQL-client           ########################################### [100%]
</pre>
<p>Then install the server package:</p>
<pre>
[root@ip-10-238-234-26 ~]# <span>rpm -ihv MySQL-server-5.5.24-1.el6.x86_64.rpm</span>
Preparing...                ########################################### [100%]
   1:MySQL-server           ########################################### [100%]
</pre>
<h5>Search for EBS volumes.</h5>
<p>Examine system to find the EBS volumes you will use for MySQL storage. </p>
<pre>
[root@ip-10-32-2-145 ~]# <span>dmesg | grep 'unknown partition'</span>
 xvds: unknown partition table
 xvdt: unknown partition table
 <span>xvds</span>: unknown partition table
 <span>xvdt</span>: unknown partition table
</pre>
<p>Please keep in mind some of the disks reported may be EC2 ephemeral storage, which you typically do not want to use for MySQL data, so make sure to only use EBS volumes in the following steps. If you are uncertain what is what, you can call <em>fdisk -l</em> and check the disk sizes:</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>fdisk -l</span>

Disk /dev/xvde1: <span>6442 MB</span>, 6442450944 bytes
255 heads, 63 sectors/track, 783 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
[..]
</pre>
<h5>Create partitions.</h5>
<p>Create a new partition on the first disk.</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>fdisk /dev/xvds</span>
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x3774dc60.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): <span>n</span>
Command action
   e   extended
   p   primary partition (1-4)
<span>p</span>
Partition number (1-4): <span>1</span>
First cylinder (1-54823, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-54823, default 54823):
Using default value 54823

Command (m for help): <span>t</span>
Selected partition 1
Hex code (type L to list codes): <span>fd</span>
Changed system type of partition 1 to fd (Linux raid autodetect)

Command (m for help): <span>wq</span>
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
</pre>
<p>Assuming you created several identical EBS volumes, duplicate the partition table onto each.</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>sfdisk -d /dev/xvds |  sfdisk /dev/xvdt</span>
Checking that no-one is using this disk right now ...
OK

Disk /dev/xvdt: 54823 cylinders, 255 heads, 63 sectors/track

sfdisk: ERROR: sector 0 does not have an msdos signature
 /dev/xvdt: unrecognized partition table type
Old situation:
No partitions found
New situation:
Units = sectors of 512 bytes, counting from 0

   Device Boot    Start       End   #sectors  Id  System
/dev/xvdt1            63 880731494  880731432  fd  Linux raid autodetect
/dev/xvdt2             0         -          0   0  Empty
/dev/xvdt3             0         -          0   0  Empty
/dev/xvdt4             0         -          0   0  Empty
Warning: no primary partition is marked bootable (active)
This does not matter for LILO, but the DOS MBR will not boot this disk.
Successfully wrote the new partition table

Re-reading the partition table ...

If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)
to zero the first 512 bytes:  dd if=/dev/zero of=/dev/foo7 bs=512 count=1
(See fdisk(8).)
</pre>
<h5>Verify partitions.</h5>
<pre>
[root@ip-10-32-2-145 ~]# <span>fdisk -l | grep -E '^/dev/xvd'</span>
[..]
/dev/xvds1               1       54823   440365716   fd  Linux raid autodetect
/dev/xvdt1               1       54823   440365716   fd  Linux raid autodetect
</pre>
<h5>Create RAID volume.</h5>
<p>Create a new RAID level 0 volume over all EBS partitions. Use relatively large chunk size &#8211; 128KB or 256KB should be good choices.</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>mdadm -C /dev/md0 --chunk=256 -n 2 -l 0 /dev/xvds1 /dev/xvdt1</span>
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
</pre>
<h5>Save the md array configuration.</h5>
<pre>
[root@ip-10-32-2-145 ~]# <span>echo 'DEVICE /dev/xvds1 /dev/xvdt1' >> /etc/mdadm.conf</span>
[root@ip-10-32-2-145 ~]# <span>mdadm --examine --scan >> /etc/mdadm.conf</span>
</pre>
<p>Here is what the file should look like</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>cat /etc/mdadm.conf</span>
DEVICE /dev/xvds1 /dev/xvdt1
ARRAY /dev/md/0 metadata=1.2 UUID=f7d5b2e7:495efeb3:26297d34:7be87159 name=ip-10-32-2-145:0
</pre>
<h5>Rebuild the initramfs image.</h5>
<p>If this is not done, system won&#8217;t see the new /etc/mdadm.conf contents during boot and md device may be renamed to something else.</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>mkinitrd --force /boot/initramfs-2.6.32-220.el6.x86_64.img 2.6.32-220.el6.x86_64</span>
</pre>
<p>You have to use the initramfs file and kernel version that are appropriate for your system. You can list <em>/boot</em> directory contents to figure this out:</p>
<pre>
[root@ip-10-226-155-162 ~]# <span>ls -1 /boot/</span>
config-2.6.32-220.el6.x86_64
efi
grub
<span>initramfs-2.6.32-220.el6.x86_64.img</span>
symvers-2.6.32-220.el6.x86_64.gz
System.map-2.6.32-220.el6.x86_64
vmlinuz-<span>2.6.32-220.el6.x86_64</span>
</pre>
<h5>Create filesystem.</h5>
<p>This part may take a while depending on the volume size.</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>mkfs.ext4 /dev/md0</span>
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=64 blocks, Stripe width=128 blocks
55050240 inodes, 220182272 blocks
11009113 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
6720 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
        102400000, 214990848

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 36 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
</pre>
<h5>Create a mount point.</h5>
<p>I do not like mounting to <em>/var/lib/mysql</em> directly. Typically I create a new directory inside <em>/vol</em>, or <em>/mnt</em>, or <em>/data</em>.</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>mkdir -p /vol/mysql</span>
</pre>
<h5>Store the filesystem information.</h5>
<p>Always use <em>noauto</em> option during installation. It skips automatic filesystem mounting during system init, which can save you from a lot of trouble if something does not work for any reason and when the boot process hangs on this step. EC2 does not come with a system console that would allow rescuing a system from such state. </p>
<pre>
[root@ip-10-32-2-145 ~]# <span>echo '/dev/md0   /vol/mysql   ext4   rw,nobarrier,noatime,nodiratime,noauto   0 0' >> /etc/fstab</span>
</pre>
<p>It may actually be very reasonable to keep <em>noauto</em> there forever and either mount the database volume manually each time the server reboots (it implies you also have to start MySQL manually) or implement volume mounting in a way that does not block the instance in case of some errors.</p>
<h5>Mount the new volume.</h5>
<p>This command can now use the configuration from <em>/etc/fstab</em>.</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>mount /vol/mysql</span>
</pre>
<p>The command should not return anything, but to make sure it worked, just run a quick check whether the volume was acutally mounted or not:</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>df -h /vol/mysql</span>
Filesystem            Size  Used Avail Use% Mounted on
/dev/md0              827G  201M  785G   1% /vol/mysql
</pre>
<p>Mounted on should point the new mount point and not to <em>/</em> for example.</p>
<h5>Move the default data directory.</h5>
<p>Move into the new location the default MySQL data directory created by the <em>MySQL-server</em> package installtion. Also create a directory for MySQL logs.</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>mv /var/lib/mysql /vol/mysql/</span>
[root@ip-10-32-2-145 ~]# <span>ln -s /vol/mysql/mysql /var/lib/mysql</span>
[root@ip-10-32-2-145 ~]# <span>mkdir /vol/mysql/log</span>
[root@ip-10-32-2-145 ~]# <span>chown mysql:mysql /vol/mysql/log</span>
</pre>
<h5>Set <em>swappiness</em> to prevent unnecessary swapping.</h5>
<p>You can refer to <a href="http://www.dbasquare.com/2012/04/02/how-to-prevent-swapping-on-a-mysql-server/" title="How to prevent swapping on a MySQL server?" >this article</a> for more details on <em>swappiness</em>.</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>echo 'vm.swappiness = 0' >> /etc/sysctl.conf</span>
[root@ip-10-32-2-145 ~]# <span>sysctl -p /etc/sysctl.conf</span>
</pre>
<h5>Configure time synchronization.</h5>
<p>Create a new file called <em>ntpdate</em> in <em>/etc/cron.daily</em> with the following contents:</p>
<pre>
#!/bin/sh

/usr/sbin/ntpdate pool.ntp.org 1> /dev/null 2>&#038;1
</pre>
<p>Then set the file permissions:</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>chmod +x /etc/cron.daily/ntpdate</span>
</pre>
<h5>Disable or configure SELinux.</h5>
<p>RedHat comes with SELinux enabled, but often SELinux will be disabled during a database server installation process. To disable, perform the following:</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>cd /etc/sysconfig/</span>
[root@ip-10-32-2-145 sysconfig]# <span>replace 'SELINUX=enforcing' 'SELINUX=disabled' -- selinux</span>
selinux converted
</pre>
<h5>Restart the system.</h5>
<p>It is time to restart the system. You should do this for two reasons:</p>
<ul>
<li>You want to verify if the RAID volume loads correctly after a restart and that MySQL data volume can be mounted again without any problems.</li>
<li>You disabled SELinux and it is also the only way to make the change effective.</li>
</ul>
<h5>Verify md array stats and SELinux status.</h5>
<p>Once the system boots again, verify the md array status.</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>cat /proc/mdstat</span>
Personalities : [raid0]
<span>md0</span> : active raid0 xvds1[0] xvdt1[1]
      880729088 blocks super 1.2 256k chunks

unused devices: <none>
</pre>
<p>It should still say <em>md0</em> if you regenerated the initramfs image.</p>
<p>If you disabled SELinux, verify that as well.</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>selinuxenabled</span>
[root@ip-10-32-2-145 ~]# <span>echo $?</span>
<span>1</span>
</pre>
<p>selinuxenabled indicates whether SELinux is enabled or disabled. It returns 0 if SELinux is enabled and 1 if it is <strong>not enabled</strong>.</p>
<h5>Mount data volume.</h5>
<pre>
[root@ip-10-32-2-145 ~]# <span>mount /vol/mysql</span>
[root@ip-10-32-2-145 ~]# <span>df -h /vol/mysql</span>
Filesystem            Size  Used Avail Use% Mounted on
/dev/md0              827G  201M  785G   1% /vol/mysql
</pre>
<p>If you want, now you can remove <em>noauto</em> from <em>/etc/fstab</em>.</p>
<h5>Create MySQL configuration file.</h5>
<p>I sometimes use this simple script that writes a good default configuration into <em>/etc/my.cnf</em>. It auto-tunes a few parameters that commonly need customization. You could just copy-paste it into the command line and run.</p>
<pre>
(cat &lt;&lt;EOF
[mysqld_safe]
log-error = /vol/mysql/log/mysql-error.log

[mysqld]
user = mysql
port = 3306
socket = /vol/mysql/mysql/mysql.sock

datadir = /vol/mysql/mysql
tmpdir = /tmp
pid-file = /vol/mysql/mysql/mysql.pid

character-set-server = utf8

slow-query-log
slow_query_log_file = /vol/mysql/log/mysql-slow.log
long_query_time = 10

log-bin = /vol/mysql/log/mysql-bin
relay-log = /vol/mysql/log/mysql-relay
server-id = $(/bin/hostname | /usr/bin/md5sum | /usr/bin/awk --non-decimal-data '{ hex=substr($1, 24, 8); printf ("0x"hex)+0 }')

back_log = 50
max_connections = 500
max_connect_errors = 100
skip-name-resolve

key_buffer_size = 8M
sort_buffer_size = 2M
read_rnd_buffer_size = 4M
bulk_insert_buffer_size = 8M
max_allowed_packet = 16M
max_heap_table_size = 64M
tmp_table_size = 64M

table_open_cache = 2048
thread_cache_size = 16

innodb_file_per_table
innodb_data_file_path = ibdata1:128M:autoextend
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DIRECT
innodb_log_buffer_size = 16M
innodb_buffer_pool_size = $(/usr/bin/awk '/MemTotal:/ { printf "%.0fM\n", ($2*0.70)/1024 }' /proc/meminfo)
innodb_log_file_size = 512M
innodb_log_files_in_group = 2
innodb_read_io_threads = $(($(/bin/grep -E 'md[0-9]+ : active raid0' /proc/mdstat | wc -w) - 2))
innodb_write_io_threads = $(($(/bin/grep -E 'md[0-9]+ : active raid0' /proc/mdstat | wc -w) - 2))
innodb_io_capacity = $((($(/bin/grep -E 'md[0-9]+ : active raid0' /proc/mdstat | wc -w) - 4 ) * 130))
innodb_thread_concurrency = 0

[mysql]
no-auto-rehash
socket=/vol/mysql/mysql/mysql.sock

[client]
socket=/vol/mysql/mysql/mysql.sock

EOF
) > /etc/my.cnf
</pre>
<p>Remember this is just a template. Each server may need individual adjustments to database configuration.</p>
<h5>It&#8217;s done.</h5>
<p>You can now start MySQL.</p>
<pre>
[root@ip-10-32-2-145 ~]# <span>/etc/init.d/mysql start</span>
Starting MySQL (Percona Server)........................     [OK]
</pre><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33319&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33319&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/05/23/install-and-configure-mysql-on-ec2-with-redhat-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress on S3: the beauty of simplicity</title>
		<link>http://www.oblaksoft.com/wordpress-on-s3-the-beauty-of-simplicity/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wordpress-on-s3-the-beauty-of-simplicity</link>
		<comments>http://www.oblaksoft.com/wordpress-on-s3-the-beauty-of-simplicity/#comments</comments>
		<pubDate>Mon, 14 May 2012 19:00:46 +0000</pubDate>
		<dc:creator>Artem Livshits</dc:creator>
				<category><![CDATA[amazon]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[Founders BLOG]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[S3]]></category>
		<category><![CDATA[website]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[YAPIXX]]></category>

		<guid isPermaLink="false">http://www.oblaksoft.com/?p=2524</guid>
		<description><![CDATA[My first computer program was written almost quarter a century ago on a BK-0010 computer.  It was very simple: the program asked the user to enter their name and then greeted the user using the entered name, like “Hello, Artem!”.  I was fascinated.  A couple of lines written in Vilnius BASIC transformed a piece of metal and silicon into a considerate thing that cared about a person’s name enough to remember it :-).  Of course, the first experience doesn’t represent the day-to-day routine of software development, but the moments when I see a couple of lines making an amazing transformation still enchant me, and remind me why I’ve been writing code all this time.
I’ve just experienced this very same first-time feeling as we’ve released Yapixx – a picture sharing web application using the cloud storage.   The most amazing thing about Yapixx is that we wrote very little code to make it happen: most of its functionality is provided by WordPress, which by the way we didn’t modify at all.  
On one hand Yapixx is just WordPress, enhanced with plugins and configured to provide good picture sharing experience.  
On the other hand, Yapixx has gone where WordPress could not go before – Yapixx runs completely on top of Amazon S3, using the enormous power of S3 to make serving the users’ pictures highly scalable and storing all data extremely durable. 

As an engineer I’ve been on the never ending quest of finding new ways to do more with less.  How do I write less code and provide more functional solution?  How do I empower my customers to accomplish more with applying very little effort (or preferably no effort at all)?  Yapixx is one of those gems – it shows how unbelievably simple it is to run a beautiful website on top of Amazon S3: you don’t need to learn new APIs, you don’t have to know how to write code, you don’t even have to know that you are relying on MySQL + ClouSE to store data reliably and securely in the cloud!
Yapixx is not a toy application: it&#8217;s a fully functional ready-to-run WordPress on Amazon S3.  With a few clicks Yapixx can be transformed into anything WordPress can do, while storing all website content in Amazon S3.  Just continue doing what you set to do with your Web site – to build a beautifully powerful representation of you, your company, and your cause.
Amazon S3 is a very powerful service designed for building one-of-a-kind massively distributed applications.  This is its strength but it’s also its weakness: if you are not building one-of-a-kind massively distributed application, the low-level vendor-specific APIs and eventual consistency guarantees are just the unnecessary complexities that you pay for, but don’t use.  WordPress is an example of how to make Amazon S3 a true cloud storage utility service that can be easily used by millions.  It’s a people-oriented (as opposed to technology-oriented) approach to building a distributed system – as a constellation of beautiful websites powered by creativity and uniqueness of individuals, like the Internet itself is!
‘Nuff said :-).  Get your own WordPress on S3 for free now.
Artem]]></description>
			<content:encoded><![CDATA[<p>My first computer program was written almost quarter a century ago on a <a href="http://upload.wikimedia.org/wikipedia/commons/8/89/Bk0010-01-sideview.jpg">BK-0010</a> computer.  It was very simple: the program asked the user to enter their name and then greeted the user using the entered name, like “Hello, Artem!”.  I was fascinated.  A couple of lines written in Vilnius BASIC transformed a piece of metal and silicon into a considerate thing that cared about a person’s name enough to remember it :-).  Of course, the first experience doesn’t represent the day-to-day routine of software development, but the moments when I see a couple of lines making an amazing transformation still enchant me, and remind me why I’ve been writing code all this time.</p>
<p>I’ve just experienced this very same first-time feeling as we’ve released <a href="http://www.oblaksoft.com/wordpress-s3-newsletter-may-2012">Yapixx</a> – a picture sharing web application using the cloud storage.   The most amazing thing about Yapixx is that we wrote very little code to make it happen: most of its functionality is provided by <a href="http://wordpress.org/">WordPress</a>, which by the way we didn’t modify at all.  </p>
<p>On one hand Yapixx is just WordPress, enhanced with plugins and configured to provide good picture sharing experience.  </p>
<p>On the other hand, Yapixx has gone where WordPress could <strong>not </strong>go before – Yapixx runs completely on top of <a href="http://aws.amazon.com/s3">Amazon S3</a>, using the enormous power of S3 to make serving the users’ pictures highly scalable and storing all data extremely durable. <br />
<span></span></p>
<p>As an engineer I’ve been on the never ending quest of finding new ways to do more with less.  How do I write less code and provide more functional solution?  How do I empower my customers to accomplish more with applying very little effort (or preferably no effort at all)?  Yapixx is one of those gems – it shows how unbelievably simple it is to run a beautiful website on top of Amazon S3: you don’t need to learn new APIs, you don’t have to know how to write code, you don’t even have to know that you are relying on MySQL + ClouSE to store data reliably and securely in the cloud!</p>
<p>Yapixx is not a toy application: it&#8217;s a fully functional ready-to-run WordPress on Amazon S3.  With a few clicks Yapixx can be transformed into anything WordPress can do, while storing all website content in Amazon S3.  Just continue doing what you set to do with <em>your</em> Web site – to build a beautifully powerful representation of you, your company, and your cause.</p>
<p>Amazon S3 is a very powerful service designed for building one-of-a-kind massively distributed applications.  This is its strength but it’s also its weakness: if you are <strong>not</strong> building one-of-a-kind massively distributed application, the low-level vendor-specific APIs and eventual consistency guarantees are just the unnecessary complexities that you pay for, but don’t use.  WordPress is an example of how to make Amazon S3 a true cloud storage utility service that can be easily used by millions.  It’s a people-oriented (as opposed to technology-oriented) approach to building a distributed system – as a constellation of beautiful websites powered by creativity and uniqueness of individuals, like the Internet itself is!</p>
<p>‘Nuff said :-).  Get your own <a href="http://www.oblaksoft.com/downloads">WordPress on S3</a> for free now.</p>
<p>Artem</p><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33229&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33229&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/05/14/wordpress-on-s3-the-beauty-of-simplicity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>“WordPress on Amazon S3″, OblakSoft Cloud Storage Newsletter, May 2012</title>
		<link>http://www.oblaksoft.com/wordpress-on-s3-newsletter-may-2012/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wordpress-on-amazon-s3%25e2%2580%25b3-oblaksoft-cloud-storage-newsletter-may-2012</link>
		<comments>http://www.oblaksoft.com/wordpress-on-s3-newsletter-may-2012/#comments</comments>
		<pubDate>Wed, 09 May 2012 23:55:30 +0000</pubDate>
		<dc:creator>Artem Livshits</dc:creator>
				<category><![CDATA[cloud]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[OblakSoft Newsletter]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[reliability]]></category>
		<category><![CDATA[S3]]></category>
		<category><![CDATA[website]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.oblaksoft.com/?p=2521</guid>
		<description><![CDATA[WordPress on S3: run a beautiful website on Amazon S3 cloud storage
OblakSoft is proud to introduce the 1st ever dynamic WordPress site running on top of Amazon S3: Yapixx.  Now you too can launch your own beautiful website on Amazon S3. 
While Yapixx stands for Yet Another Picture Sharing Site, it is actually one of a kind.  Yapixx is WordPress that was moved to run on top of Amazon S3 storage without changing a line of code in the WordPress core engine. 
 


What is Yapixx?
Try out Yapixx
Take Your Own WordPress Site to Amazon S3





 
What is Yapixx?
Yapixx is ready-to-run WordPress on Amazon S3.  It took about one man-week to create Yapixx, thanks to power of WordPress.  WordPress is a mature and versatile platform that powers millions of websites with diverse purposes from blogging to social networking.  There are thousands of plugins and themes written for WordPress that can transform the website into pretty much anything.  And now it can run with Amazon S3 without writing a line of code.
Yapixx taps into power of Amazon S3.  Amazon S3 is inexpensive, highly reliable, available and scalable storage service.  It got even less expensive recently and its usage is growing 2.5-2.9 times year-over-year.  Using Amazon S3 to store Yapixx data has the following benefits:

         Storage cost scales with usage, no upfront reservation is needed
         Storage consumption scales up and down with the amount of data stored
         Storage is extremely reliable and durable by Amazon S3 design
         Pictures are served by Amazon S3 directly, which makes Yapixx highly scalable 
         No database backup and recovery is needed, now that Amazon S3 holds both for the website content stored in WordPress database and website’s media files

Yapixx demonstrates how easy it is to create web applications on top of Amazon S3.  Amazon S3 has been able to only power static websites; now S3 can power sophisticated dynamic web software such as WordPress.


Try out Yapixx 
Here are the five easy steps to get Yapixx up and running:

Sign up for an AWS account.
Create an S3 bucket.
Start EC2 instance using Yapixx AMI.
Connect to the web application from a web browser.
Enter the S3 data location and authentication information.

The full step-by-step guide for launching Yapixx is available here.
All done!  You’ve got a picture sharing site running on top of Amazon S3.
 

Get started with Yapixx today for FREE!  It may be the boost that you need to propel your creative ideas and turn them into the next $1B acquisition.

Take Your Own WordPress Site to Amazon S3
You can use Yapixx as a starting point to create your own beautiful WordPress site.  The plugins that turn WordPress into Yapixx, such as the wp2cloud plugin, the Yapixx theme, etc. are available under the GPL completely FREE.  Creating a new AMI with your own web application is a matter of two mouse clicks in the AWS management console:


Moreover, you may even get your web application hosted completely free in the Amazon cloud, if your AWS usage doesn’t exceed the AWS free tier limits.  This is a great way to get a new web application to production quickly, absolutely FREE!  And when your web application usage grows, you can easily move it to larger cloud instance or to your own hardware: the data is stored in Amazon S3 and can be accessed from anywhere. 
  
Launch your own WordPress site to the cloud today!  It’s easy and FREE, no writing code is required.  Start at http://www.oblaksoft.com/downloads.
Let us know what you think about Yapixx!  How can we further simplify the migration of websites to the cloud storage?
See also:
WordPress on S3: how it works.]]></description>
			<content:encoded><![CDATA[<h1><span><span><span>WordPress on S3: run a beautiful website on Amazon S3 cloud storage</span></span></span></h1>
<p><span><span>OblakSoft is proud to introduce the 1</span><sup><span>st</span></sup><span> ever dynamic </span></span><a href="http://wordpress.org/"><span>WordPress</span></a><span> site running on top of </span><a href="http://aws.amazon.com/s3/"><span>Amazon S3</span></a><span><span>: Yapixx.  Now you too can launch your own beautiful website on Amazon S3. </span></span></p>
<p><span>While Yapixx stands for <strong>Y</strong>et <strong>A</strong>nother <strong>Pic</strong>ture <strong>S</strong>haring <strong>S</strong>ite, it is actually one of a kind.  Yapixx is </span><a href="http://wordpress.org/"><span>WordPress</span></a><span> that was moved to run on top of </span><a href="http://aws.amazon.com/s3/"><span>Amazon S3</span></a><span><span> storage without changing a line of code in the WordPress core engine. </span></span></p>
<p><span> <a href="http://www.oblaksoft.com/wp-content/uploads/2012/05/yapixx-logo.png"><img class="wp-image-2541 alignleft" title="WordPress on S3 - Yapixx" src="http://www.oblaksoft.com/wp-content/uploads/2012/05/yapixx-logo.png" alt="" width="298" height="149" /></a></span></p>
<div>
<ul>
<li><a href="http://www.oblaksoft.com#_what_is_yapixx">What is Yapixx?</a></li>
<li><a href="http://www.oblaksoft.com#_try_out_yapixx">Try out Yapixx</a></li>
<li><a href="http://www.oblaksoft.com#_your_site_on_s3">Take Your Own WordPress Site to Amazon S3</a></li>
</ul>
</div>
<p><span></span></p>
<div></div>
<p><a name="_what_is_yapixx"></a></p>
<p><span> </span></p>
<p><span><span><span>What is Yapixx?</span></span></span></p>
<p><span>Yapixx is ready-to-run WordPress on Amazon S3.  It took about one man-week to create Yapixx, thanks to power of WordPress.  WordPress is a mature and versatile platform that powers millions of websites with diverse purposes from blogging to social networking.  There are thousands of </span><a href="http://wordpress.org/extend/plugins/"><span>plugins</span></a><span> and </span><a href="http://wordpress.org/extend/themes/"><span>themes</span></a><span> written for WordPress that can transform the website into pretty much </span><a href="http://wordpress.org/showcase/"><span>anything</span></a><span><span>.  <strong>And now it can run with Amazon S3 without writing a line of code.</strong></span></span></p>
<p><span>Yapixx taps into power of Amazon S3.  Amazon S3 is inexpensive, highly reliable, available and scalable storage service.  It got even </span><a href="http://aws.typepad.com/aws/2012/02/amazon-s3-price-reduction.html"><span>less expensive</span></a><span> recently and its usage is growing </span><a href="http://aws.typepad.com/aws/2012/01/amazon-s3-growth-for-2011-now-762-billion-objects.html"><span>2.5-2.9 times</span></a><span><span> year-over-year.  Using Amazon S3 to store Yapixx data has the following benefits:</span></span></p>
<ul>
<li>         <span><span>Storage cost scales with usage, no upfront reservation is needed</span></span></li>
<li>         <span><span>Storage consumption scales up and down with the amount of data stored</span></span></li>
<li>         <span><span>Storage is extremely reliable and durable by Amazon S3 design</span></span></li>
<li>         <span><span>Pictures are served by Amazon S3 directly, which makes Yapixx highly scalable </span></span></li>
<li>         <span><span>No database backup and recovery is needed, now that Amazon S3 holds both for the website content stored in WordPress database and website’s media files</span></span></li>
</ul>
<p><span>Yapixx demonstrates how easy it is to create web applications on top of Amazon S3.  Amazon S3 has been able to only power </span><a href="http://www.allthingsdistributed.com/2011/08/Jekyll-amazon-s3.html"><span>static websites</span></a><span><span>; now S3 can power sophisticated dynamic web software such as WordPress.</span></span></p>
<p><a name="_try_out_yapixx"></a></p>
<h2><span><span><br />
<span>Try out Yapixx </span></span></span></h2>
<p><span><span>Here are the five easy steps to get Yapixx up and running:</span></span></p>
<ol>
<li><a href="http://docs.amazonwebservices.com/AmazonS3/latest/gsg/SigningUpforS3.html"><span>Sign up</span></a><span><span> for an AWS account.</span></span></li>
<li><a href="http://docs.amazonwebservices.com/AmazonS3/latest/gsg/CreatingABucket.html"><span>Create</span></a><span><span> an S3 bucket.</span></span></li>
<li><span>Start EC2 instance using </span><a href="http://www.oblaksoft.com/downloads/"><span>Yapixx AMI</span></a><span><span>.</span></span></li>
<li><span><span>Connect to the web application from a web browser.</span></span></li>
<li><span><span>Enter the S3 data location and authentication information.</span></span></li>
</ol>
<p><span>The full step-by-step guide for launching Yapixx is available </span><a href="http://www.slideshare.net/artemlivshits/wordpress-on-s3-stepbystep"><span>here</span></a><span><span>.</span></span></p>
<p><span><span>All done!  You’ve got a picture sharing site running on top of Amazon S3.</span></span></p>
<p><span><span> <a href="http://www.oblaksoft.com/wp-content/uploads/2012/05/yapixx-frontpage.png"><img class="aligncenter  wp-image-2547" title="WordPress on S3 - yapixx-frontpage" src="http://www.oblaksoft.com/wp-content/uploads/2012/05/yapixx-frontpage.png" alt="" width="676" height="580" /></a></span></span></p>
<div></div>
<p><span><span>Get started with Yapixx today for FREE!  It may be the boost that you need to propel your creative ideas and turn them into the next $1B acquisition.</span></span></p>
<p><a name="_your_site_on_s3"></a></p>
<h2><span><span><span>Take Your Own WordPress Site to Amazon S3</span></span></span></h2>
<p><span><span>You can use Yapixx as a starting point to create your own beautiful WordPress site.  The plugins that turn WordPress into Yapixx, such as the wp2cloud plugin, the Yapixx theme, etc. are available under the GPL completely FREE.  Creating a new AMI with your own web application is a matter of two mouse clicks in the AWS management console:</span></span></p>
<p><a href="http://www.oblaksoft.com/wp-content/uploads/2012/05/create-AMI.png"><img class="aligncenter size-full wp-image-2548" title="WordPress on S3 create-AMI" src="http://www.oblaksoft.com/wp-content/uploads/2012/05/create-AMI.png" alt="" width="371" height="158" /></a></p>
<div></div>
<p><span>Moreover, you may even get your web application hosted completely free in the Amazon cloud, if your AWS usage doesn’t exceed the </span><a href="http://aws.amazon.com/free/"><span>AWS free tier</span></a><span><span> limits.  This is a great way to get a new web application to production quickly, absolutely FREE!  And when your web application usage grows, you can easily move it to larger cloud instance or to your own hardware: the data is stored in Amazon S3 and can be accessed from anywhere. </span></span></p>
<p><span> <a href="http://www.oblaksoft.com/wp-content/uploads/2011/12/wp-cloud-logo.png"><img class="aligncenter size-full wp-image-2528" title="WordPress-Cloud-logo" src="http://www.oblaksoft.com/wp-content/uploads/2011/12/wp-cloud-logo.png" alt="WordPress on Cloud" width="297" height="149" /></a></span><span><br clear="ALL" /> </span></p>
<p><span>Launch your own WordPress site to the cloud today!  It’s easy and FREE, no writing code is required.  Start at </span><a href="http://www.oblaksoft.com/downloads"><span>http://www.oblaksoft.com/downloads</span></a><span><span>.</span></span></p>
<p><span><span>Let us know what you think about Yapixx!  How can we further simplify the migration of websites to the cloud storage?</span></span></p>
<p><strong><em><span><span>See also:</span></span></em></strong></p>
<p><span>WordPress on S3: </span><a href="http://www.oblaksoft.com/wordpress-on-s3-how-it-works"><span>how it works</span></a><span><span>. </span></span></p><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33176&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33176&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/05/10/wordpress-on-amazon-s3%e2%80%b3-oblaksoft-cloud-storage-newsletter-may-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress on S3: how it works</title>
		<link>http://www.oblaksoft.com/wordpress-on-s3-how-it-works/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wordpress-on-s3-how-it-works</link>
		<comments>http://www.oblaksoft.com/wordpress-on-s3-how-it-works/#comments</comments>
		<pubDate>Wed, 09 May 2012 21:00:50 +0000</pubDate>
		<dc:creator>Artem Livshits</dc:creator>
				<category><![CDATA[cloud]]></category>
		<category><![CDATA[Founders BLOG]]></category>
		<category><![CDATA[LAMPS3]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[S3]]></category>
		<category><![CDATA[website]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.oblaksoft.com/?p=2533</guid>
		<description><![CDATA[OblakSoft is pleased to showcase how simple it is to run LAMP applications on the cloud storage.  OblakSoft configured the WordPress web publishing platform to run on Amazon S3 storage and made the recipe available for anyone to replicate.  A ready-to-run WordPress site (configured as Yapixx) – is available for public use for FREE.  Yapixx is WordPress configured as a picture sharing website that runs on top of Amazon S3 (Yapixx stands for Yet Another Picture Sharing Site).

 
                                                                                                                                                                                       
Yapixx consists of the following software components:

·         WordPress configured as a picture sharing site
·         Yapixx theme based on zBench with modifications to look better for picture sharing
·         wp2cloud plugin that stores pictures and other media in Amazon S3 via ClouSE
·         LAMP software stack (Linux, Apache, MySQL, PHP)
·         ClouSE &#8211; the Cloud Storage Engine for MySQL

The Yapixx architecture looks like the following:
 

The WordPress platform provides the web user interface.  WordPress stores the web site content in a MySQL database.  MySQL uses ClouSE to store data in Amazon S3.  The end users use a web browser to interact with WordPress; web pages come from WordPress.  All the pictures (and other media) in the pages are served by Amazon S3, where they are stored as weblobs by WP2Cloud WordPress plugin.
WordPress is a mature and versatile platform that powers millions of websites with diverse purposes from blogging to social networking.  There are thousands of plugins and themes written for WordPress that can transform the website into pretty much anything.  And now with ClouSE WordPress can run on Amazon S3.
ClouSE is the key component of Yapixx application.  ClouSE is the Cloud Storage Engine for MySQL that can utilize cloud storage such as Amazon S3 to store user data.  Applications powered by ClouSE enjoy all the benefits of cloud storage – scaling cost with usage, high storage availability and reliability, quick and easy disaster recovery, etc.  And weblobs that store pictures for Yapixx can be served directly from cloud storage relying on its enormous power to make serving the content highly scalable.
ClouSE is the first and only relational database technology that overcomes cloud storage adoption barriers that prevents other databases from using cloud storage.  With ClouSE, cloud storage can be just plugged into a database server seamlessly and securely.
 

ClouSE and Amazon S3 provide seamless and secure data protection, scalability and availability for websites, static or dynamic.  A website on cloud storage has the following characteristics:

         Storage cost scales with usage, no upfront reservation is needed
         Storage consumption scales up and down with the amount of data stored
         Storage is extremely reliable and durable by Amazon S3 design
         Data is compressed, which significantly reduces storage size and cost
         Data is encrypted, which provides data confidentiality
         Pictures are served by Amazon S3 directly, which makes the website highly scalable
         No database backup and recovery is needed, which makes the website highly available

ClouSE brings the power of Amazon S3 to websites, providing an easy and inexpensive built-in solution for scenarios that previously required expensive infrastructure and operation.  Overprovisioning primary storage, implementing onsite + offsite backup and replication are not needed any more.  There is no need to implement and routinely test disaster recovery procedures.  No need to buy more expensive software editions.  The end-to-end data continuity is in the box: no extra tools, processes or equipment is required.  That’s the true realization of the cloud promise – commoditization and democratization of solutions that previously could only be afforded by large IT organizations with sizeable budgets.
The most amazing thing about Yapixx is that WordPress platform was not initially designed to store its data in cloud storage.  Yet, now it runs on Amazon S3 without any changes to the WordPress core engine!  We like to say that Yapixx was assembled and configured for the cloud, rather than designed and implemented for the cloud.
Launch your own WordPress site to the cloud today!  It’s easy and FREE, no writing code is required.  Start at http://www.oblaksoft.com/downloads.
We’d love to know what you think of Yapixx.  Are you considering to move your website to the cloud storage?
See also:
WordPress on S3: run a beautiful website on Amazon cloud storage.]]></description>
			<content:encoded><![CDATA[<p><span>OblakSoft is pleased to showcase how simple it is to run LAMP applications on the cloud storage.  OblakSoft configured the WordPress web publishing platform to run on Amazon S3 storage and made the recipe available for anyone to replicate.  A ready-to-run WordPress site (configured as </span><a href="https://www.oblaksoft.com/documentation/yapixx"><span>Yapixx</span></a><span>) – is available for public use for FREE.  Yapixx is </span><a href="http://wordpress.org/"><span>WordPress</span></a><span><span> configured as a picture sharing website that runs on top of </span></span><a href="http://aws.amazon.com/s3/"><span>Amazon S3</span></a><span><span><span><span> (</span></span>Yapixx stands for <strong>Y</strong>et <strong>A</strong>nother <strong>Pic</strong>ture <strong>S</strong>haring <strong>S</strong>ite).</span></span></p>
<p><span></span></p>
<p><span> <a href="http://www.oblaksoft.com/wp-content/uploads/2012/05/yapixx-logo.png"><img class="aligncenter  wp-image-2541" title="wordpres-on-s3-yapixx-logo" src="http://www.oblaksoft.com/wp-content/uploads/2012/05/yapixx-logo.png" alt="" width="298" height="149" /></a></span></p>
<p><span><span>                                                                                                                                                                                       </span></span></p>
<p><span><span>Yapixx consists of the following software components:</span></span></p>
<ul>
<li><span>·</span>         <a href="http://wordpress.org/"><span>WordPress</span></a><span><span> configured as a picture sharing site</span></span></li>
<li><span>·</span>         <span>Yapixx theme based on </span><a href="http://wordpress.org/extend/themes/zbench"><span>zBench</span></a><span><span> with modifications to look better for picture sharing</span></span></li>
<li><span>·</span>         <a href="https://www.oblaksoft.com/documentation/yapixx"><span>wp2cloud</span></a><span><span> plugin that stores pictures and other media in Amazon S3 via ClouSE</span></span></li>
<li><span>·</span>         <span>LAMP software stack (Linux, </span><a href="http://httpd.apache.org/"><span>Apache</span></a><span>, </span><a href="http://www.mysql.com/"><span>MySQL</span></a><span>, </span><a href="http://www.php.net/"><span>PHP</span></a><span><span>)</span></span></li>
<li><span>·</span>         <a href="https://www.oblaksoft.com/documentation"><span>ClouSE</span></a><span><span> &#8211; the Cloud Storage Engine for MySQL</span></span></li>
</ul>
<p><span><span>The Yapixx architecture looks like the following:</span></span><br />
<span> <a href="http://www.oblaksoft.com/wp-content/uploads/2012/05/yapixx-architecture.png"><img class="aligncenter size-full wp-image-2543" title="wordpress-on-s3-yapixx-architecture" src="http://www.oblaksoft.com/wp-content/uploads/2012/05/yapixx-architecture.png" alt="" width="542" height="338" /></a></span></p>
<div></div>
<p><span>The WordPress platform provides the web user interface.  WordPress stores the web site content in a MySQL database.  MySQL uses ClouSE to store data in Amazon S3.  The end users use a web browser to interact with WordPress; web pages come from WordPress.  All the pictures (and other media) in the pages are served by Amazon S3, where they are stored as </span><a href="https://www.oblaksoft.com/documentation/faq/#_weblob"><span>weblobs</span></a><span><span> by WP2Cloud WordPress plugin.</span></span></p>
<p><span><span>WordPress is a mature and versatile platform that powers millions of websites with diverse purposes from blogging to social networking.  There are thousands of plugins and themes written for WordPress that can transform the website into pretty much anything.  And now with ClouSE WordPress can run on Amazon S3.</span></span></p>
<p><span>ClouSE is the key component of Yapixx application.  ClouSE is the Cloud Storage Engine for </span><a href="http://www.mysql.com/"><span>MySQL</span></a><span> that can utilize cloud storage such as </span><a href="http://aws.amazon.com/s3/"><span>Amazon S3</span></a><span><span> to store user data.  Applications powered by ClouSE enjoy all the benefits of cloud storage – scaling cost with usage, high storage availability and reliability, quick and easy disaster recovery, etc.  And weblobs that store pictures for Yapixx can be served directly from cloud storage relying on its enormous power to make serving the content highly scalable.</span></span></p>
<p><span><span>ClouSE is the first and only relational database technology that overcomes cloud storage adoption barriers that prevents other databases from using cloud storage.  With ClouSE, cloud storage can be just plugged into a database server seamlessly and securely.</span></span></p>
<p><span> <a href="http://www.oblaksoft.com/wp-content/uploads/2011/12/ClouSE_Logo11.png"><img class="aligncenter size-full wp-image-2251" title="ClouSE_Logo" src="http://www.oblaksoft.com/wp-content/uploads/2011/12/ClouSE_Logo11.png" alt="" width="376" height="149" /></a></span></p>
<div></div>
<p><span><span>ClouSE and Amazon S3 provide seamless and secure data protection, scalability and availability for websites, static or dynamic.  A website on cloud storage has the following characteristics:</span></span></p>
<ul>
<li>         <span><span>Storage cost scales with usage, no upfront reservation is needed</span></span></li>
<li>         <span><span>Storage consumption scales up and down with the amount of data stored</span></span></li>
<li>         <span><span>Storage is extremely reliable and durable by Amazon S3 design</span></span></li>
<li>         <span><span>Data is compressed, which significantly reduces storage size and cost</span></span></li>
<li>         <span><span>Data is encrypted, which provides data confidentiality</span></span></li>
<li>         <span><span>Pictures are served by Amazon S3 directly, which makes the website highly scalable</span></span></li>
<li>         <span><span>No database backup and recovery is needed, which makes the website highly available</span></span></li>
</ul>
<p><span><span>ClouSE brings the power of Amazon S3 to websites, providing an easy and inexpensive built-in solution for scenarios that previously required expensive infrastructure and operation.  Overprovisioning primary storage, implementing onsite + offsite backup and replication are not needed any more.  There is no need to implement and routinely test disaster recovery procedures.  No need to buy more expensive software editions.  The end-to-end data continuity is in the box: no extra tools, processes or equipment is required.  That’s the true realization of the cloud promise – commoditization and democratization of solutions that previously could only be afforded by large IT organizations with sizeable budgets.</span></span></p>
<p><span><span>The most amazing thing about Yapixx is that WordPress platform was <em>not</em> initially designed to store its data in cloud storage.  Yet, now it runs on Amazon S3 without any changes to the WordPress core engine!  We like to say that Yapixx was <em>assembled</em> and <em>configured</em> for the cloud, rather than designed and implemented for the cloud.</span></span></p>
<p><span>Launch your own WordPress site to the cloud today!  It’s easy and FREE, no writing code is required.  Start at </span><a href="http://www.oblaksoft.com/downloads"><span>http://www.oblaksoft.com/downloads</span></a><span><span>.</span></span></p>
<p><span>We’d love to know what you think of Yapixx.  Are you considering to move your website to the cloud storage?</span></p>
<p><em><strong><span><span>See also:</span></span></strong></em></p>
<p><span>WordPress on S3: </span><a href="http://www.oblaksoft.com/wordpress-on-s3-newsletter-may-2012"><span>run a beautiful website on Amazon cloud storage</span></a><span><span>. </span></span></p><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33175&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33175&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/05/10/wordpress-on-s3-how-it-works/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interesting behavior of a MySQL benchmark on EC2</title>
		<link>http://www.dbasquare.com/2012/05/03/interesting-behavior-of-a-mysql-benchmark-on-ec2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=interesting-behavior-of-a-mysql-benchmark-on-ec2</link>
		<comments>http://www.dbasquare.com/2012/05/03/interesting-behavior-of-a-mysql-benchmark-on-ec2/#comments</comments>
		<pubDate>Thu, 03 May 2012 13:31:00 +0000</pubDate>
		<dc:creator>dba square</dc:creator>
				<category><![CDATA[cloud]]></category>
		<category><![CDATA[mysql performance]]></category>
		<category><![CDATA[performance]]></category>

		<guid isPermaLink="false">http://www.dbasquare.com/?p=1552</guid>
		<description><![CDATA[I had to benchmark an EC2 instance to see whether a database could be safely moved to it. It is a good practice, which helps avoiding surprises when an instance or its storage are allocated in a noisy neighborhood, where the neighbors use so much resources that it affects the performance of our MySQL database. It is understandable that one can never get very reliable results on EC2, this is a shared environment after all, and that some fluctuations should be expected, however it is still good to know the numbers. I started my benchmarks and everything seemed fine at first, but then sometimes statistics I was getting started looking quite odd.

I was running the benchmarks on a High-CPU Extra Large Instance and couldn&#8217;t see any reliability in the results at all. I mean, in one moment I was getting poor throughput and horrible response times only to see it improve a lot a few minutes later. I ruled out a possibility that it could be some kind of problems with the storage performance causing this, so I started suspecting MySQL itself &#8211; perhaps some sort of contention. But no system statistics, nor any information from MySQL wanted to confirm that theory. 
Finally, I went for oprofile and started it during one of the benchmarks and what I saw surprised me:


When oprofile was running MySQL performance nearly doubled. It was also reflected in the CPU utilization which increased accordingly and also got a lot more stable. After a while, I stopped oprofile and the performance dropped again.
At this point I am not sure how to explain this, however this was repeatable. Anyone?]]></description>
			<content:encoded><![CDATA[<p>I had to benchmark an EC2 instance to see whether a database could be safely moved to it. It is a good practice, which helps avoiding surprises when an instance or its storage are allocated in a noisy neighborhood, where the neighbors use so much resources that it affects the performance of our MySQL database. It is understandable that one can never get very reliable results on EC2, this is a shared environment after all, and that some fluctuations should be expected, however it is still good to know the numbers. I started my benchmarks and everything seemed fine at first, but then sometimes statistics I was getting started looking quite odd.</p>
<p><span></span></p>
<p>I was running the benchmarks on a <em>High-CPU Extra Large Instance</em> and couldn&#8217;t see any reliability in the results at all. I mean, in one moment I was getting poor throughput and horrible response times only to see it improve a lot a few minutes later. I ruled out a possibility that it could be some kind of problems with the storage performance causing this, so I started suspecting MySQL itself &#8211; perhaps some sort of contention. But no system statistics, nor any information from MySQL wanted to confirm that theory. </p>
<p>Finally, I went for <em>oprofile</em> and started it during one of the benchmarks and what I saw surprised me:</p>
<p><img src="http://www.dbasquare.com/wp-content/uploads/2012/05/ec2-util.png" alt="" title="EC2: Utilization - Utilization increases when oprofile is running" width="648" height="343" class="aligncenter size-full wp-image-1554" /><br />
<img src="http://www.dbasquare.com/wp-content/uploads/2012/05/ec2-qps.png" alt="" title="EC2: MySQL Throughput - Performance nearly doubles while oprofile is running" width="647" height="341" class="aligncenter size-full wp-image-1564" /></p>
<p>When <em>oprofile</em> was running MySQL performance nearly doubled. It was also reflected in the CPU utilization which increased accordingly and also got a lot more stable. After a while, I stopped <em>oprofile</em> and the performance dropped again.</p>
<p>At this point I am not sure how to explain this, however this was repeatable. Anyone?</p><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33125&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33125&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/05/03/interesting-behavior-of-a-mysql-benchmark-on-ec2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tab Sweep: jBPM5, Hibernate Logging, Grizzly 2.2.5, Cache and JPA 2.0, Observer Pattern, . . .</title>
		<link>https://blogs.oracle.com/theaquarium/entry/tab_sweep_jbpm5_hibernate_logging?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tab-sweep-jbpm5-hibernate-logging-grizzly-2-2-5-cache-and-jpa-2-0-observer-pattern</link>
		<comments>https://blogs.oracle.com/theaquarium/entry/tab_sweep_jbpm5_hibernate_logging#comments</comments>
		<pubDate>Sat, 21 Apr 2012 09:00:00 +0000</pubDate>
		<dc:creator>The Aquarium</dc:creator>
				<category><![CDATA[cloud]]></category>
		<category><![CDATA[enums]]></category>
		<category><![CDATA[grizzly]]></category>
		<category><![CDATA[hibernate]]></category>
		<category><![CDATA[jaxrs]]></category>
		<category><![CDATA[jbpm]]></category>
		<category><![CDATA[jpa]]></category>
		<category><![CDATA[jsf]]></category>
		<category><![CDATA[Weekly]]></category>

		<guid isPermaLink="false">https://blogs.oracle.com/theaquarium/entry/tab_sweep_jbpm5_hibernate_logging</guid>
		<description><![CDATA[Recent Tips and News on Java, Java EE 6, GlassFish &#38; more :
 
   
     
       
         
            
         
         
           • Using Java Persistence API for Java SE 7 Desktop applications in NetBeans 7 (Oracle Learning Library)
• Use jBPM5 embedded within a Java EE 6 application (akquinet)
• If JAX-RS had an MVC framework? (Mamadou Lamine Ba)
• Java EE Revisits Design Patterns: Observer (Nikos Maravitsas)
• Detailed Logging Output with GlassFish Server, Hibernate, and Log4j (wikis.oracle.com)
• Grizzly 2.2.5 has been released! (Ryan Lubke)
• Glassfish : Installing and Configuring it to connect database (MYSQL) Part - 1 (Srirmpack)
• Persisting Enums in JPA 2.0 (Raphael Rodrigues)
• Basic Bean Building: How to Quickly Create a JSF Managed &#34;Look-up&#34; Bean (Mark Heckler)
• Cache thoughts with JPA 2.0 (Raphael Rodrigues)
• Install GlassFish 3.1 on CentOS or RHEL (DiAbOlIkO)
• Bug fix for Eclipse runtime plugin (Peter Benedikovic )
• JPA: Dynamic search builder, the power of annotation, reflection and generics. (Mohamed Taman)
• Spring and GlassFish JMS (René van Wijk)]]></description>
			<content:encoded><![CDATA[<p>
Recent Tips and News on Java, Java EE 6, GlassFish &amp; more :
</p> 
  <table> 
    <tbody> 
      <tr> 
        <td valign="top"> 
          <p><a href="http://glassfish.org/" title="Tips &amp; Tricks"><img src="https://blogs.oracle.com/theaquarium/resource/RadioReceiver-89_99px.png" alt="Radio Receiver" valign="center" align="left" height="52" hspace="4" vspace="4" width="60" /></a> </p> 
        </td> 
        <td valign="top"> 
          <p> • <a href="http://apex.oracle.com/pls/apex/f?p=44785:24:0::NO:24:P24_CONTENT_ID,P24_PREV_PAGE:6084,2">Using Java Persistence API for Java SE 7 Desktop applications in NetBeans 7</a> (Oracle Learning Library)
<br />• <a href="http://blog.akquinet.de/2012/04/13/use-jbpm5-embedded-within-a-java-ee-6-application/">Use jBPM5 embedded within a Java EE 6 application</a> (akquinet)
<br />• <a href="http://weblogs.java.net/blog/lamineba/archive/2012/04/10/if-jax-rs-had-mvc-framework">If JAX-RS had an MVC framework?</a> (Mamadou Lamine Ba)
<br />• <a href="http://www.javacodegeeks.com/2012/04/java-ee-revisits-design-patterns_17.html">Java EE Revisits Design Patterns: Observer</a> (Nikos Maravitsas)
<br />• <a href="https://wikis.oracle.com/display/GlassFish/Detailed+Logging+Output+with+GlassFish+Server,+Hibernate,+and+Log4j">Detailed Logging Output with GlassFish Server, Hibernate, and Log4j</a> (wikis.oracle.com)
<br />• <a href="http://grizzly.1045725.n5.nabble.com/ANNOUNCE-Grizzly-2-2-5-has-been-released-td5639360.html">Grizzly 2.2.5 has been released!</a> (Ryan Lubke)
<br />• <a href="http://www.youtube.com/watch?v=w-WkQoDMXSY&amp;context=C4541d75ADvjVQa1PpcFNjyQ9imbzoa6QM5JxnIRn92KW0bm7QV38=">Glassfish : Installing and Configuring it to connect database (MYSQL) Part - 1</a> (Srirmpack)
<br />• <a href="https://blogs.oracle.com/adfthoughts/entry/persisting_enums_in_jpa_2">Persisting Enums in JPA 2.0</a> (Raphael Rodrigues)
<br />• <a href="https://blogs.oracle.com/javajungle/entry/basic_bean_building_how_to">Basic Bean Building: How to Quickly Create a JSF Managed &quot;Look-up&quot; Bean</a> (Mark Heckler)
<br />• <a href="https://blogs.oracle.com/adfthoughts/entry/cache_thoughts_with_jpa_2">Cache thoughts with JPA 2.0</a> (Raphael Rodrigues)
<br />• <a href="http://www.diaboliko.net/?p=1151">Install GlassFish 3.1 on CentOS or RHEL</a> (DiAbOlIkO)
<br />• <a href="https://blogs.oracle.com/piotrik/entry/bug_fix_for_eclipse_runtime">Bug fix for Eclipse runtime plugin</a> (Peter Benedikovic )
<br />• <a href="http://tamanmohamed.blogspot.de/2012/04/jpa-dynamic-search-builder-power-of.html">JPA: Dynamic search builder, the power of annotation, reflection and generics.</a> (Mohamed Taman)
<br />• <a href="http://middlewaremagic.com/weblogic/?p=7960&amp;sf3854726=1">Spring and GlassFish JMS</a> (René van Wijk)

</p> 
        </td> 
      </tr> 
    </tbody> 
  </table><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33004&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33004&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/04/21/tab-sweep-jbpm5-hibernate-logging-grizzly-2-2-5-cache-and-jpa-2-0-observer-pattern/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SkySQL Raises $4 Million in Series A Round Funding</title>
		<link>http://www.chriscalender.com/?p=1044&#038;utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=skysql-raises-4-million-in-series-a-round-funding</link>
		<comments>http://www.chriscalender.com/?p=1044#comments</comments>
		<pubDate>Wed, 18 Apr 2012 22:18:34 +0000</pubDate>
		<dc:creator>Chris Calender</dc:creator>
				<category><![CDATA[cloud]]></category>
		<category><![CDATA[cloud database]]></category>
		<category><![CDATA[Finnish Industry Investment Ltd.]]></category>
		<category><![CDATA[InnoDB]]></category>
		<category><![CDATA[maria]]></category>
		<category><![CDATA[MariaDB]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[OnCorp]]></category>
		<category><![CDATA[OnCorps]]></category>
		<category><![CDATA[Open Ocean Capital]]></category>
		<category><![CDATA[SkySQL]]></category>
		<category><![CDATA[skysql cloud]]></category>
		<category><![CDATA[skysql investment]]></category>
		<category><![CDATA[skysql series A funding]]></category>
		<category><![CDATA[Spintop Ventures]]></category>

		<guid isPermaLink="false">http://www.chriscalender.com/?p=1044</guid>
		<description><![CDATA[I am very pleased to say that earlier today, SkySQL announced it has raised $4 Million in Series A Round Funding.
Let me post the main part of the press release here:
SAN JOSE – April 18, 2012 – SkySQL, the first choice in affordable database solutions for the MySQL® and MariaDB® databases in the enterprise and the cloud, today announces that the company has raised $4 million in Series A funding from a number of investors, including OnCorps, an elite peer-based community of veteran technology investors and advisors committed to bringing better, cost-disruptive technologies into the mainstream. Also funding the round are European investors including Finnish Industry Investment Ltd., Spintop Ventures and Open Ocean Capital.
SkySQL will primarily use the investment to fund growth in its new product development, including adding critical positions. This is the company’s most recent move in expanding beyond a MySQL and MariaDB services-only company into a fully-fledged database products and services provider. SkySQL made its debut in October 2010 and has been funded to date with seed money from OnCorps, as well as Open Ocean Capital. Today, SkySQL is currently operating in 13 countries.
&#8220;The SkySQL strategy aligns well with OnCorps’s technology leadership vision,” said Bob Suh of OnCorps. “SkySQL will capitalize on the growing database and cloud services market. We are delighted and look forward to working with the SkySQL team to contribute to their continued success.&#8221;
&#8220;This investment will let us focus on ramping up development and efforts behind both enterprise and cloud database products that address a very real need in the marketplace,&#8221; said Ulf Sandberg, chief executive officer of SkySQL. &#8220;We also plan to build on our existing MySQL and MariaDB services offering, which offers customers unrivaled support, consulting and training.&#8221;
You can read the full press release here:
http://www.skysql.com/news-and-events/press-releases/skysql-raises-4-million-series-round
Very exciting times!  
&#160;]]></description>
			<content:encoded><![CDATA[<p>I am very pleased to say that earlier today, SkySQL announced it has raised $4 Million in Series A Round Funding.</p>
<p>Let me post the main part of the press release here:</p>
<p><b>SAN JOSE – April 18, 2012</b> – <a href="http://www.skysql.com" >SkySQL</a>, the first choice in affordable database solutions for the MySQL® and MariaDB® databases in the enterprise and the cloud, today announces that the company has raised $4 million in Series A funding from a number of investors, including OnCorps, an elite peer-based community of veteran technology investors and advisors committed to bringing better, cost-disruptive technologies into the mainstream. Also funding the round are European investors including Finnish Industry Investment Ltd., Spintop Ventures and Open Ocean Capital.</p>
<p>SkySQL will primarily use the investment to fund growth in its new product development, including adding critical positions. This is the company’s most recent move in expanding beyond a MySQL and MariaDB services-only company into a fully-fledged database products and services provider. SkySQL made its debut in October 2010 and has been funded to date with seed money from OnCorps, as well as Open Ocean Capital. Today, SkySQL is currently operating in 13 countries.</p>
<p>&#8220;The SkySQL strategy aligns well with OnCorps’s technology leadership vision,” said Bob Suh of OnCorps. “SkySQL will capitalize on the growing database and cloud services market. We are delighted and look forward to working with the SkySQL team to contribute to their continued success.&#8221;</p>
<p>&#8220;This investment will let us focus on ramping up development and efforts behind both enterprise and cloud database products that address a very real need in the marketplace,&#8221; said Ulf Sandberg, chief executive officer of SkySQL. &#8220;We also plan to build on our existing MySQL and MariaDB services offering, which offers customers unrivaled support, consulting and training.&#8221;</p>
<p>You can read the full press release here:</p>
<p><a href="http://www.skysql.com/news-and-events/press-releases/skysql-raises-4-million-series-round" >http://www.skysql.com/news-and-events/press-releases/skysql-raises-4-million-series-round</a></p>
<p>Very exciting times! <img src="http://www.chriscalender.com/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /> </p>
<p>&nbsp;</p><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32972&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32972&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/04/19/skysql-raises-4-million-in-series-a-round-funding/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Can’t Travel to Collaborate 12?  Plug-in Virtually Instead! (revised schedule)</title>
		<link>http://blogs.ioug.org/2012/04/16/cant-travel-to-collaborate-12-plug-in-virtually-instead-revised-schedule/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=cant-travel-to-collaborate-12-plug-in-virtually-instead-revised-schedule</link>
		<comments>http://blogs.ioug.org/2012/04/16/cant-travel-to-collaborate-12-plug-in-virtually-instead-revised-schedule/#comments</comments>
		<pubDate>Mon, 16 Apr 2012 20:00:30 +0000</pubDate>
		<dc:creator>IOUG Blogs</dc:creator>
				<category><![CDATA[cloud]]></category>
		<category><![CDATA[COLLABORATE]]></category>
		<category><![CDATA[COLLABORATE 12]]></category>
		<category><![CDATA[data warehouse]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[discount]]></category>
		<category><![CDATA[education]]></category>
		<category><![CDATA[exadata]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[IOUG]]></category>
		<category><![CDATA[IOUG General]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[OEM]]></category>
		<category><![CDATA[online]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[training]]></category>
		<category><![CDATA[virtualization]]></category>

		<guid isPermaLink="false">http://blogs.ioug.org/?p=347</guid>
		<description><![CDATA[  Plug-in to Vegas The program focuses on key topics such as high availability, virtualization, security, business intelligence, Exadata, Cloud Computing and internals.  Recently added, we switched around the schedule to include the Thursday Deep Dive, Avoiding Downtime through the Maximum &#8230; Continue reading &#8594;]]></description>
			<content:encoded><![CDATA[  Plug-in to Vegas The program focuses on key topics such as high availability, virtualization, security, business intelligence, Exadata, Cloud Computing and internals.  Recently added, we switched around the schedule to include the Thursday Deep Dive, Avoiding Downtime through the Maximum &#8230; <a href="http://blogs.ioug.org/2012/04/16/cant-travel-to-collaborate-12-plug-in-virtually-instead-revised-schedule/">Continue reading <span>&#8594;</span></a><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32911&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32911&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/04/17/cant-travel-to-collaborate-12-plug-in-virtually-instead-revised-schedule/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Conference 2012 Day 0</title>
		<link>http://www.pythian.com/news/31911/mysql-conference-2012-day-0/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=mysql-conference-2012-day-0</link>
		<comments>http://www.pythian.com/news/31911/mysql-conference-2012-day-0/#comments</comments>
		<pubDate>Tue, 10 Apr 2012 22:07:18 +0000</pubDate>
		<dc:creator>Raj Thukral</dc:creator>
				<category><![CDATA[cloud]]></category>
		<category><![CDATA[community]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[Group Blog Posts]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[mysqlconf]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[presentations]]></category>
		<category><![CDATA[Technical Blog]]></category>

		<guid isPermaLink="false">http://www.pythian.com/news/?p=31911</guid>
		<description><![CDATA[Wow what a lot has changed since the last MySQL conference I blogged about in 2007 MySQL has been acquired twice, once as MySQL by Sun and the second time around bundled with Sun when Oracle bought Sun. The conference is no longer organized by O&#8217;Reilly but by Percona. And the MySQL database itself has [...]]]></description>
			<content:encoded><![CDATA[Wow what a lot has changed since the last MySQL conference I blogged about in 2007 MySQL has been acquired twice, once as MySQL by Sun and the second time around bundled with Sun when Oracle bought Sun. The conference is no longer organized by O&#8217;Reilly but by Percona. And the MySQL database itself has [...]<br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32820&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32820&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/04/11/mysql-conference-2012-day-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Conference 2012 Day 0</title>
		<link>http://www.pythian.com/news/31911/mysql-conference-2012-day-0/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=mysql-conference-2012-day-0-2</link>
		<comments>http://www.pythian.com/news/31911/mysql-conference-2012-day-0/#comments</comments>
		<pubDate>Tue, 10 Apr 2012 22:07:18 +0000</pubDate>
		<dc:creator>Raj Thukral</dc:creator>
				<category><![CDATA[cloud]]></category>
		<category><![CDATA[community]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[Group Blog Posts]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[mysqlconf]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[presentations]]></category>
		<category><![CDATA[Technical Blog]]></category>

		<guid isPermaLink="false">http://www.pythian.com/news/?p=31911</guid>
		<description><![CDATA[Wow what a lot has changed since the last MySQL conference I blogged about in 2007 MySQL has been acquired twice, once as MySQL by Sun and the second time around bundled with Sun when Oracle bought Sun. The conference is no longer organized by O&#8217;Reilly but by Percona. And the MySQL database itself has [...]]]></description>
			<content:encoded><![CDATA[Wow what a lot has changed since the last MySQL conference I blogged about in 2007 MySQL has been acquired twice, once as MySQL by Sun and the second time around bundled with Sun when Oracle bought Sun. The conference is no longer organized by O&#8217;Reilly but by Percona. And the MySQL database itself has [...]<br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32820&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32820&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/04/11/mysql-conference-2012-day-0-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

