MySQL Newsletter November 2009
Articles in this newsletter:
- Live Webinar: Migrating from Access to MySQL
- White Paper: A Guide for Migrating From Microsoft Access to MySQL
- Case Study: MySQL Cluster Helps Mapion to Improve its User Experience
- Quick Poll: What information do you find most useful in the MySQL Newsletter?
- New Java and MySQL Resources Page
- Upcoming MySQL University Sessions
- Test Drive MySQL Enterprise Monitor for 48 Hours
- New Release of MySQL Community Server 5.1.40 (GA)
- New Release of MySQL Community Server 5.0.87 (GA)
- New Release of MySQL Cluster 7.0.8a (GA)
- White Paper: A Visual Guide to Installing MySQL Embedded Server on Windows
- White Paper: Best Practice Guide: Developing Subscriber Databases with MySQL Cluster
- Case Study: be2 Scales Fast Growing Matchmaking Web Site with MySQL Enterprise
- PlanetMySQL Blog Posts
- PlanetMySQL Blog: Silent Install Instructions
- PlanetMySQL Blog: Long running transactions
- PlanetMySQL Blog: PHP/C: Does MYSQL[I]_OPT_CONNECT_TIMEOUT work?
- PlanetMySQL Blog: Agents, Hosts and Instances, Oh My!
- PlanetMySQL Blog: Data type confusion: what is an int(11)?
- PlanetMySQL Blog: InnoDB Plugin (With some Windows focus) - Part 1
- PlanetMySQL Blog: Some friendly advice for bootstrapping your OSS
- PlanetMySQL Blog: MySQL and hardware information
- PlanetMySQL Blog: PHP: 150 performance tuning screws for mysqlnd
- PlanetMySQL Blog: Secure Your Server - Tips for DBAs
- PlanetMySQL Blog: MySQL Cluster 7.0.9a source release now available - replaces 7.0.9
- PlanetMySQL Blog: MySQL Cluster: Errors faced while importing data
- PlanetMySQL Blog: Configuring MySQL Cluster for Large Databases
- PlanetMySQL Blog: Make MySQL refuse connections until data nodes are started
- PlanetMySQL Blog: How MySQL Cluster Executes Queries
- Live Webinar: Memcached and MySQL for Rapidly Scaling High Traffic Websites (November 12)
- Live Webinar: MySQL Cluster: Geographic Replication Deep-Dive (November 24)
- Live Webinar: Migrating from SQL Server to MySQL (December 3)
- Live Webinar: For ISVs and OEMs: Getting Maximum Scalability and Availability with Java and MySQL (December 8)
- Live Webinar: Optimizing Queries for Performance (December 9)
- Live Webinar: Why LiveTime Software Provides SQL Server to MySQL Migration for its Customers (December 15)
- Live Webinar: Windows Server Failover Clustering with MySQL (December 3, 17)
- On Demand Webinars: Java, Windows & More
- MySQL Seminar: The Revolution of the Open Source Data Warehouse (November 18, Milan)
- Calpont: MySQL Database Analytics with InfiniDB from Calpont
- Joyent: Read/Write Load Balancing for MySQL with ZXTM in the Joyent Public Cloud (Webinar, November 17)
Thursday, November 19, 2009 10:00 PST (Americas)
Thursday, November 19, 2009 15:00 CET (EMEA)
In this webinar we will explore the benefits of migrating Microsoft Access data to MySQL including migration best practices, migration tools, scripts and datatype mapping. Finally, we will demonstrate how to leverage Access front-ends with a MySQL-backend.
Many MySQL customers are migrating from Microsoft Access because they have reached the conclusion that the combination of enhanced scalability (both in terms of concurrent userload and overall data volume), cost-savings, platform freedom, and feature set of MySQL make for a compelling business case to offload some or all their Access applications to the MySQL database server.
Download this White Paper » (http://www.mysql.com/why-mysql/white-papers/a-guide-for-migrating-from-microsoft-access-to-mysql/)
Headquartered in Tokyo, Japan, Mapion Co. Ltd delivers Japan's leading online map search service, with over 700,000 page views per day, and over 200 enterprise customers. Mapion's shareholders include Toppan, NTT East, Dentsu, Yahoo Japan, and Sharp.
Read this Case Study » (http://www.mysql.com/why-mysql/case-studies/mysql-cluster-helps-mapion-to-improve-its-user-experience/)
Java is the number one most popular language for developing MySQL applications according to our most recent Annual MySQL Survey. The mysql.com/java page is a compilation of the variety of resources - from formal tutorials to discussion forums - that can help you develop and optimize your Java and MySQL applications.
Visit the Java Resources Page » (http://www.mysql.com/why-mysql/java/)
MySQL University is a free educational online program for engineers and developers who are interested in MySQL development and internals. MySQL University sessions are open to anyone, not limited to Sun employees. Sessions are recorded with slides and audio, so if you can't attend the live session you can review the recording anytime after the session.
Upcoming sessions include:
- November 12: Gearman for MySQL (Giuseppe Maxia)
- November 19: memcached Functions for MySQL (UDFs) (Patrick Galbraith)
- November 26: The Spider Storage Engine (Giuseppe Maxia)
- December 3: Practical Full-Text Search in MySQL (Bill Karwin)
You can now Test Drive the MySQL Enterprise Monitor with no download or installation required. MySQL will provide you access to demo servers to test MySQL Enterprise Monitor for 48hrs.
Learn More » (http://www.mysql.com/products/enterprise/monitor-test-drive.html)
MySQL Community Server 5.1.40, a new version of the popular Open Source Database Management System, has been released. MySQL 5.1.40 is recommended for use on production systems.
MySQL Community Server 5.0.87, a new version of the popular Open Source Database Management System, has been released. This and future releasesin the MySQL Community Server 5.0 series share version numbers with their MySQL Enterprise Server counterparts.
This release includes a fix for Bug#47844, which was discovered in MySQL Cluster NDB 7.0.8 shortly after release. The MySQL Cluster NDB 7.0.8a release is identical in all other respects to MySQL Cluster NDB 7.0.8.
The goal of this guide is to make getting started with MySQL Embedded Server on the Windows platform easy for commercial application developers (ISVs/OEMs) who are new to MySQL and/or are used to using SQL Server. This paper will guide you through the steps and tools needed to get up and running quickly with MySQL Embedded Server on Windows using familiar terms, comparisons, and language.
Read the White Paper » (http://www.mysql.com/why-mysql/white-papers/guide-to-installing-mysql-embedded-server-on-windows/)
In this new paper we describe how MySQL Cluster Carrier Grade Edition can be used to build a scalable, highly available, geographically replicated Subscriber Database. We show how user-defined partitioning and distribution keys help a subscriber database to scale its performance linearly with cluster size, while maintaining the benefits of a relational database, accessed via an SQL API.
Read this White Paper » (http://www.mysql.com/why-mysql/white-papers/building-subscriber-databases-using-mysql-cluster/)
be2 started in 2004 with its German web site be2.de and is now one of the world's leading matchmaking services with more than 17 million members in 36 countries and 20,000 new members joining be2 every day.
Read this Case Study » (http://www.mysql.com/why-mysql/case-studies/be2-scales-matchmaking-web-site-mysql/)
The following blog posts are from PlanetMySQL. PlanetMySQL is an aggregation of blogs and news from MySQL developers, users and employees. It is an excellent source of all things MySQL, including technical tips and best practices.
This entry provides instructions for "silently" installing MySQL on a Microsoft Windows server. I use the term "silent install" to describe the method of passing parameters to the Microsoft Installation Package (MSI) to bypass installation screens. This allows you to deploy MySQL with your application and to install MySQL without end-user intervention. The developer can define the install location, the appropriate storage engines, the root password and the server configuration.
I was debugging a server that had too many concurrent queries. From SHOW INNODB STATUS output, there were many long running transactions with uncommitted work and there were many more transactions blocked on InnoDB locks. This is not a good state for a busy OLTP server and I am trying to figure out if the problem is the application or InnoDB.
C and PHP MySQL clients can set a connection timeout before a connection is established to MySQL. The MySQL C API manual states about MYSQL_OPT_CONNECT_TIMEOUT, which is equal to PHPs MYSQLI_OPT_CONNECT_TIMEOUT:
Connect timeout in seconds.
That is half of the story. The actual behaviour depends on the library you use, the operating system and the transport protocol (TCP/IP, Unix domain sockets, Windows named pipes, Shared Memory).
The MySQL Enterprise Monitor (MEM) is designed to collect data from installations of MySQL and report back to the service manager so that information can be correlated and displayed in an easy to read form on the dashboard. What does become confusing sometimes for people is that the item displayed on the dashboard gives a hostname, but you have multiple databases running on that host?! How does MEM distinguish between all these installs of MySQL versus the hosts they are running on and how the data is collected for each one?
Over and over I see customers that don't understand what int(11) really means. Their confusion is understandable. Many know what defining a char(10) means (a fixed-sized character string that allows up to 10 characters). However, ints are different.
So InnoDB is now, from 5.1.38, distributed with MySQL. It is still not enabled by default though. What this means is that there are 2 InnoDB implementations that comes with your MySQL installation. The old-school standard one, which is compiled in with the MySQL binary and is enabled by default, and one plugin.
So you're a small startup company, ready to go live with your product, which you intend to distribute under an Open Source License. Congratulations, you made a wise decision! Your developers have been hacking away frantically, getting the code in good shape for the initial launch. Now it's time to look into what else needs to be built and setup, so you're ready to welcome the first members of your new community and to ensure they are coming back!
People often ask "what's the best hardware to run a database on?" And the answer, of course, is "it depends". With MySQL, though, you can get good performance out of almost any hardware.
If you need *great* performance, and you have active databases with a large data set, here are some statistics on real life databases - feel free to add your own.
Yes, 150 means we added some 30 performance statistics to the MySQL native driver for PHP (mysqlnd) since monday. The new statistics are explained in three words: counting COM_* commands. COM_* commands refers to the command packets of the MySQL client server protocol. For example, COM_QUERY is used to execute nonprepared SQL statements.
It has been the responsibility of the DBA to implement a security strategy, at least on the database level. All DBAs should take action, if not already, by taking a proactive approach to this crucial part of database administration. For this post I have compiled a list of general best practices below.
The source version for MySQL Cluster 7.0.9a has now been made available at ftp://ftp.mysql.com/pub/mysql/download/cluster_telco/mysql-5.1.39-ndb-7.0.9a/
This replaces MySQL Cluster 7.0.9.
Here is the list of errors I have faced while importing a 25G .sql file into my cluster setup.
This is a test setup and to get maximum RAM availability, I have 3 data nodes and 1 Management node with replication factor of 1. The solutions provided are the ones which helped me.
If you need to create a big database into MySQL Cluster with:
- A lot of tables indexes, columns, and tables
- A lot of records
there are a few things to think about ...
Geert JM Vanderkelen
MySQL Cluster 6.3.28 and 7.0.9 introduce the MySQL server option --ndb-wait-setup. This makes sure that clients can not connect the SQL Node when no Data Nodes are available within, by default, 15 seconds. When the timeout is reached, and no Data Nodes are available, the NDB storage engine will be marked as unavailable.
This post describes how MySQL Cluster executes queries. First of all, Cluster is a storage engine. It doesn't actually execute queries because it doesn't speak SQL. That is why you use a MySQL server, which parses your queries and sends low-level storage engine API calls to the Cluster data nodes. The data nodes know how to retrieve or store data. Or you can talk to the data nodes directly using the NDB API(s).
Thursday, November 12, 2009 - 10:00 am PST
Please join us for this informative technical webinar with MySQL, Glam Media and Gear6. Glam Media was the 2nd fastest growing US-based web property in 2008 and continues to increase its unique visitor count by over 100% annually.
Tuesday, November 24, 2009 - 10:00am CET (EMEA)
MySQL Cluster has been deployed into some of the most demanding web, telecoms and enterprise/government workloads, supporting 99.999% availability with real time performance and linear write scalability.
Tune into this webinar where you can hear from the MySQL Cluster product management team provide a detailed "deep dive" into one of MySQL Cluster's key capabilities - Geographic Replication.
Thursday, December 03, 2009 - 10:00am PST
Join us for Part 5 of the Windows and MySQL webinar series with Jimmy Guerrero and Mike Frank of the MySQL group at Sun Microsystems. In this presentation we will explore the benefits of migrating from Microsoft SQL Server to MySQL. We will also cover migration best practices, as well as, an overview of migration tools, scripts, datatype mapping and functional equivalents. If you are interested in learning how to migrate from SQL Server to MySQL, this webinar is for you.
Tuesday, December 08, 2009 - 10:00am PST
In this technical webinar, Mark Matthews will review the various MySQL-provided and third-party options for horizontally scaling J2EE applications that use MySQL on commodity hardware and making those applications highly available. He will provide the information you need to determine which option is best for your particular application.
Wednesday, December 09, 2009 - 10:00am CET (EMEA)
In this webinar we will show different methods to analyze and optimize queries to increase the performance of your MySQL database. We will focus on identifying problematic queries, analyzing their impact and possible optimizations. Examples will be shown during a live demo.
Tuesday, December 15, 2009 - 10:00am PST
LiveTime has been providing ITIL Service Management and Help Desk products to global 2000 companies for more than 8 years and has recently witnessed significant interest from customers in migrating from SQL Server to MySQL. In this webinar you will learn why LiveTime decided to offer a free migration service for its customers as well as optimizations and performance characteristics.
Thursday, December 03, 2009 - 15:00 CET (EMEA)
Thursday, December 17, 2009 - 10:00am PST (Americas)
Join us for Part 6 of the Windows and MySQL webinar series with Jimmy Guerrero and Mike Frank of the MySQL group at Sun Microsystems. In this presentation we will explore the benefits of leveraging Microsoft Windows 2008 Server Failover Clustering with MySQL. We will also cover step by step, how to get started installing and configuring Failover Clustering. Finally, we will look at best practices concerning MySQL storage engine selection and behaviors with Failover Clustering. If you are interested in learning how to leverage Windows 2008 Server Failover Clustering with MySQL, this webinar is for you.
MySQL is pleased to make the following On-Demand Web Seminars available. They are recorded replays of our most popular live Web Seminars:
November 18, 2009 - Milan
This event is designed *for decision makers* to learn more about how to use MySQL and complementary partner products from Talend and Infobright in order to lower the Data Warehouse TCO by up to 90%. During this event you will have plenty of opportunities to discuss the topic with our presenters and network with your peers.
Learn More » (http://www.mysql.it/news-and-events/events/)
A dedicated MySQL certified consultant will work closely with your team to:
- Analyze your current database application
- Analyze your database requirements
- Identify potential issues and limitations
- Benchmark, load test, and optimize critical SQL queries
- Help them implement best practices and recommend tools for developing your database infrastructure
Learn More » (http://www.mysql.com/consulting/packaged/dev.html)
London, Paris, Milan, Chicago, Hamburg
This course is designed for experienced database administrators and system architects that want to analyze and form a basis of understanding different high availability options, including clustering and replication solutions within MySQL. This course will provide the tools required to make the decision of what high availability solution is appropriate and how to implement a system with the correct design.
Register Now for an Upcoming Date » (http://www.mysql.com/training/courses/mysql_5_ha.html)
Let's be honest: working with big databases is a lot of fun. There's something cool about dealing with tables that have hundreds of millions or billions of rows in them, loading huge amounts of data, building star and snowflake schemas for data warehouses/marts, optimizing query performance, and all that jazz.
Tuesday, November 17, 2009 - 10:00am PST
Join us for this informative technical webinar with Raja Srinivasan - Zeus Technology, Rod Boothby - Joyent, and Jimmy Guerrero - Sun Microsystems, where we will explore how to load balance MySQL in the Joyent Public Cloud with ZXTM.