Home | Link 1 Link 1 | Link 2 | Link 3

Header Image

MY RESOURCES

My Shorthands
- My Experiences: My Services
- My Portfolio: Creative Juice ----------------------------------
My Contrib
- OSSEC: WebUI
- MySQL: Webinars Proxy
- SysAdmin: Tools/Scripts
----------------------------------
System Administration
- OpenBSD/Linux
- Shell/Perl/PHP
- SNMP, SMTP, POP, DNS, NFS, HTTP, SQL, FTP, SSH
----------------------------------
- MySQL Database
- MySQL Cluster
- MySQL Replication
- MySQL Proxy
----------------------------------
- Apache Software Foundation
- Apache HTTPD Web Server
- Tomcat HTTPD Web Server
----------------------------------
Programming
- Perl v4,5
- PHP v3,4,5
- ActionScript v1,2,3
- JavaScript v1.x
- HTML 2, 3, 4
- Shell (Bash/Korn/C)
- C/C++ v6.0
- Visual Basic v6.0
- Lua
Resources & Related Links
- Internet Engineering Task Force
- RFC Database
- Internet Society
- Internet Archetecture Board
- Internet Assigned Numbers Authority
- Internet Research Task Force
- Institute of Electrical and Electronics Engineers
----------------------------------
- Word Wide Web Consortium
- History of the Internet
- Lorem Ipsum
View my profile on LinkedIn

MYSQL - MY CONTRIB

With my ever increasing use of MySQL services, I have created various automated scripts, configurations, management utilities, designs, and other things to help me program, manage, and administrate MySQL-related tasks. Some of the items are for private distribution, but the ones I can publish publically, I will do so on this page.

MY WEBINARS

INFORMATION & FILES   |   Right-Click and select the 'Save Link' option to download the file.
Designing Fail-Safe Systems with MySQL Proxy (Webex Compatibility)
Tuesday, October 07, 2008 - I was asked to give a webinar covering Fail-Safe designs using MySQL Proxy. Here I introduced my own version of scaling "back" web nodes to strap on the "Proxy Belt" as a way to maintain autonomous and fail-safe network operation.
View the WebEx Video: click here (Webex Compatibility)
View the Presentation File: click here
Registration & Info Page: click here (may not be available for long)

 

RW-SPLITTING2

NOTE: Development on RW-Splitting2 has stopped due to a core bug within the MySQL-Proxy application itself. We can not continue with this development until this bug has been patched and verified in their SVN repository. Until then, we are on stand-by.
For more information: http://bugs.mysql.com/35013
DOWNLOADABLE FILES   |   Right-Click and select the 'Save Link' option to download the file.
rw-splitting.lua (view)
Download or View the original rw-splitting.lua script. This script was distributed with MySQL-Proxy v0.6.1 (alpha).
rw-splitting2.lua
Download will be released soon.
This is an update to the original rw-splitting.lua file distributed with MySQL-Proxy v0.6.1.
My Custom Proxy Config (view)
A new configuration file format that supports common commenting:
(/etc/mysql-proxy/mysql-proxy.conf)
MySQL-Proxy Initialization Script (view)
A custom initialization file for the /etc/init.d/ folder that reads the custom configuration files and sets debug levels.
Compatible with `chkconfig`.
My Proxy Cron Script (view)
Here is a helpful cronscript that you can use to ensure the MySQL-Proxy service is up and running. This script will use standard system messaging to alert you if your service has died, clean up any remaining pid files and restart the service.
All-In-One Zip (download)
I zipped up all 3 files: mysqlproxy start-up script, the mysql-proxy config file, and the mysql-proxy cronscript right here. Hopefully this will be a little easier to move around if you need it. I will add the rw-splitting2.lua to this once it has been completely developed and tested.
I welcome any corrections, suggestions, even modifications you may have found. Full credit will always be given and all my scripts are considered free to modify as however you want -- just try to keep my name in there somewhere.

My Custom Proxy Config
The initializing script I have will check for and read this file to determine all the options that should be appointed.

My MySQL-Proxy Initialization Script
I created a /etc/mysql-proxy/mysql-proxy.conf that is laid out like other common configuration files. The ability to add comments both above and beside the configuration options was the driving factor of recreating the way configuration is handled.

My MySQL-Proxy Cron Script
I also created an easy to use cron script that you can install to ensure your MySQL-Proxy is up and running! It's pretty self-explanatory, but it ensures that the process is running and responsive and clears any stale pid file left by a stalled Proxy service.
Note -- This was developed with the use of my MySQL-Proxy Configuration file. Some of you may not use the configuration file in which case this cron-script will have to be modified. Feel very free to modify *any* of my scripts to your needs. If you would like, keep my name somewhere in there to remember me by but I most certainly don't demand it. It's your network -- use it how you want to!

About MySQL-Proxy
MySQL-Proxy is a transparent gateway service between SQL servers and any connecting clients. As data is transferred through the proxy en route to the server or the client, a developer using the Lua scripting language, can 'hook in' to certain stages of the SQL process. These hooks allow a developers to change the server, the port, even the query itself. They can also monitor the result set that is returned from the SQL server and modify it -- even prevent it from reaching the client all together. This allows extreme customization with SQL connection, query, and data management.
Downloads: http://dev.mysql.com/downloads/mysql-proxy/
Documentation: http://dev.mysql.com/doc/refman/5.1/en/mysql-proxy.html

Use with MySQL Replication
One of the more common uses of MySQL Proxy is with the MySQL Replication service. The replication service is a Master to Slave architecture, where the master 'replicates' its content to each configured slave. this mirrors your data for load balancing, failovers and general backups and MySQL Proxy can help manage some of these tasks. With a Lua script API and a few event hooks, developers can insert code to manage both the traffic and the data. Because the replication happens in one direction (from the master to the slave), any changes in the database have to be made on the master. A Lua script was introduced to handle seperating SQL-Modify from SQL-Read. Introducing - Read/Write Splitting (rw-splitting.lua) that is packaged with the MySQL-Proxy v0.6.0 distro.

Read/Write Splitting
The distribution of MySQL-Proxy comes with a Lua script called 'rw-splitting.lua' which separate SELECT query statements from all the rest and sends them to the configure slaves.

Read/Write Splitting v2
There were a few problems with the original rw-splitting.lua script:

  1. When making a modification in SQL and then a following SELECT, it was possible that replication had not taken place yet and the SELECT would have not picked up the changes.
  2. When testing multiple websites, users, and databases on one proxy service, it would sometimes try to connect to a new database with the wrong user.
  3. Not really a 'problem', but the original script lacked a profiling system for connecting clients to fine-tune session management.
Since I think MySQL-Proxy is going to be an extremely successful application and I started using the technology myself, I took the challenge and tried to fix these issues. With the help of another MySQL-Proxy user, Boyan Dimitrov, who I met on the official forums, we are working on a complete upgrade to the script.

«←→»

OTHER "MY" LINKS

Frequent News Links
- Google News
- MSNBC
- Reuters
- Fox News
SCI/TECH Headlines
* This RSS feed URL is deprecated
* Amazon Go Android App Claims Checkout-Free Shopping Is Here - Android Headlines
* Why parents should worry about Office 365's Immersive Reader dictation feature for students - PCWorld
* Rupert Murdoch wants Facebook to pay publishers for their news content - NBCNews.com
* Intel halts some chip patches as the fixes cause problems - CNET
* Facebook Says It May Not Be Good For Democracy - U.S. News & World Report
* SpaceX's Big Rocket, the Falcon Heavy, Finally Reaches the Launchpad - New York Times
* Apple reportedly plans to discontinue the first-gen iPhone X later this year - BGR
* NASA pulled this astronaut from a space station crew. Her brother blames racism. - Washington Post
Copyright Clint D. Alexander ©2009-2012 Link 1 | Link 2 | Link 3