Everyone who has been involved with IT for more than a few

Similar documents
MySQL: Scaling & High Availability

Installing MySQL Database On Linux

MySQL for Database Administrators Ed 4

Viewer 2 Beta Frequently Asked Questions

The history and future of the MySQL Ecosystem

<Insert Picture Here> Introduction to MySQL

MySQL High Availability. Michael Messina Senior Managing Consultant, Rolta-AdvizeX /

CIB Session 12th NoSQL Databases Structures

In this chapter, we explain why you might choose to use a database system

MySQL for Developers. Duration: 5 Days

MySQL for Developers. Duration: 5 Days

Introduction to MariaDB. Mike Pavlak, Solution Consultant

Introduction. Performance

Birth of a website: THE DIGION DOMAIN and educational website development

Lead the Market. Visual Studio Magazine Leads the Way. Covering the leading enterprise computing platform: Windows

How Percona Contributes to Open Source Database Ecosystem. Peter Zaitsev 5 October 2016

Agenda. Brief discussion of MySQL History Installation Access GUI s Data Migration DB2 Storage Engine Q & A

MySQL for Database Administrators Ed 3.1

Introduction to Oracle

ITS. MySQL for Database Administrators (40 Hours) (Exam code 1z0-883) (OCP My SQL DBA)

Результат запроса: Roblox игру

Welcome to Virtual Developer Day MySQL!

Standards for Test Automation

- Samsung Tablet Photo - Tablets Mean Business. Survey of IT pros reflects growing trend toward tablets for workforce mobility and more

Course Outline. MySQL Database Administration & Design. Course Description: Pre-requisites: Course Content:

DOWNLOAD PDF LEARN TO USE MICROSOFT ACCESS

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Drupal

MySQL for Developers Ed 3

AC : EXPLORATION OF JAVA PERSISTENCE

Lab 1 MonarchPress Product Description. Robert O Donnell. Old Dominion University CS411. Janet Brunelle. November 23, 2015.

youtube google search affiliate make money through search engine optimization affiliate marketing via youtube and google

Contributing to a Community

RED HAT ENTERPRISE LINUX. STANDARDIZE & SAVE.

Atlassian Confluence 5 Essentials

GROW YOUR BUSINESS WITH AN ALL-IN-ONE REAL ESTATE PLATFORM

Open Source Vs. Proprietary Development for E-Commerce. By: Chris Laney

OpenStack Summit Half-Day Track

It s a Unix(-like) System? An Introduction to TrueOS and Open Source Software. Copyright ixsystems, Inc. 2017

MySQL vs MariaDB. Where are we now?

MySQL Database Administrator Training NIIT, Gurgaon India 31 August-10 September 2015

MySQL Deserves a Double Take

Introducing IBM Lotus Sametime 7.5 software.

Cucumber Linux Distribution

Cancer Waiting Times. Getting Started with Beta Testing. Beta Testing period: 01 February May Copyright 2018 NHS Digital

Name: Vijay Rajagopalan Title : Principal Architect Company : Microsoft Corporation Session Code:

Contributing to a Community

Social Media Tools. March 13, 2010 Presented by: Noble Studios, Inc.

Introduction to MySQL Cluster: Architecture and Use

MySQL for Beginners Ed 3

MySQL for Developers Ed 3

Enterprise Data Architect

Tutorial Point Servlets Pdf

$ SQL Server 2000 Database Administration. Course Description. Table of Contents. Pricing and Multi-User Licensing

Your Data Demands More NETAPP ENABLES YOU TO LEVERAGE YOUR DATA & COMPUTE FROM ANYWHERE

Web Hosting. Important features to consider

Content Management Systems

Lab 1 MonarchPress Product Description. Robert O Donnell CS411. Janet Brunelle. September 20, Version #2

Market Report. Scale-out 2.0: Simple, Scalable, Services- Oriented Storage. Scale-out Storage Meets the Enterprise. June 2010.

App Engine: Datastore Introduction

What s New in MySQL and MongoDB Ecosystem Year 2017

MySQL Performance Improvements

Value of Windows Telesales Script

White Paper. RingCentral. Professional Services Implementation & Onboarding Methodology

Chapter 11: Editorial Workflow

PostgreSQL Training. Scheduled Courses On-site Courses. Learn from the PostgreSQL experts.

Zope Project and Community Documentation

Implementing ITIL v3 Service Lifecycle

MEMA. Memory Management for Museum Exhibitions. Independent Study Report 2970 Fall 2011

SELLING YOUR ORGANIZATION ON APPLICATION SECURITY. Navigating a new era of cyberthreats

MariaDB: Community Driven SQL Server. Kristian Nielsen MariaDB developer Monty Program AB

BEST PRACTICES FOR EFFECTIVE MYSQL PERFORMANCE TUNING. By: Janis Griffin. Database Performance Evangelist/Senior DBA

Microsoft Certified Professional Transcript. Microsoft Office Project Server

Oracle Database 11g & MySQL 5.6 Developer Handbook (Oracle Press) PDF

DOWNLOAD OR READ : WINDOWS EDITION USER GUIDE TO MICROSOFT WINDOWS 10 PDF EBOOK EPUB MOBI

Finding a needle in Haystack: Facebook's photo storage

Percona Software & Services Update

Architecture Proposal for an Internet Services Charging Platform

Future Trends of ILS

vrealize Operations Manager User Guide

Where is Database Management System (DBMS) being Used?

As Enterprise Mobility Usage Escalates, So Does Security Risk

Free Downloads Professional Microsoft SQL Server 2012 Administration

Consumer Insights. YouGov Omnibus, 5 th -6 th April

A SERVICE ORGANIZATION S GUIDE SOC 1, 2, & 3 REPORTS

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

Practical Database Design Methodology and Use of UML Diagrams Design & Analysis of Database Systems

harmon.ie Moving to a new File Share experience

incloud Third Party Monitoring

INTRODUCTION TO CLOUD STORAGE

There And Back Again

Tutorial Point On Html5 Pdf

Programming: Computer Programming For Beginners: Learn The Basics Of Java, SQL & C Edition (Coding, C Programming, Java Programming, SQL

PHP Hypertext Preprocessor: Tools for Webpage Management. Michael Watson ICTN

Modern Tools Solve Ancient Riddle

Programming JAVA: JavaScript, Coding: Programming Guide: LEARN IN A DAY! By Os Swift

Running MySQL on AWS. Michael Coburn Wednesday, April 15th, 2015

Year Experienced Candidates

40 GbE: What, Why & Its Market Potential

MySQL Cluster An Introduction

CO MySQL for Database Administrators

Transcription:

Introduction to MySQL Everyone who has been involved with IT for more than a few months has at least heard of MySQL. The acquisition of MySQL AB by Sun Microsystems brought a great deal of additional attention to MySQL s database management system (DBMS). Even so, there is often more to MySQL than many people realize. They simply do not realize the full capabilities of MySQL. Recent versions of MySQL have brought a large feature set that covers just about every imaginable need. This includes partitions, scheduled events, prepared statements, triggers, and views. MySQL has long been used in dynamic websites and applications. Whether you program in Perl, PHP, ASP,.NET or Ruby you can integrate MySQL into your environment. MySQL Mission Speed, Reliability, and Ease of Use COPYRIGHTED MATERIAL The driving force behind MySQL has been to provide a reliable, high-performance server that is easy to set up and use. These qualities are why many Internet companies in the late 1990s chose MySQL to power their websites. These same qualities are why MySQL is making strong inroads into the internal database servers of Fortune 1000 companies that have traditionally used commercial databases. MySQL did not corner the existing database market; instead, MySQL allowed the database market to expand and grow to include people all over the world. MySQL created a niche by creating the opportunity for almost anyone to be able use a IN THIS CHAPTER Learning MySQL s history Finding the MySQL community Contributing to MySQL 3

Part I First Steps with MySQL database. Had there not been an easy-to-use, fast, reliable database server such as MySQL, there would be a dearth of the user-provided content and collaborative efforts that are what we expect from the Internet. Without MySQL, there would be far fewer articles, podcasts, online zines, tutorials, photos, forums, videos, collaborative reference material, and search engines. The World (Wide Web) as we know it would be completely different. MySQL is not the only free database management system; it also is not the only open source database management system. One of the largest differences is the user friendliness that pervades MySQL. The friendliness, starting with the cost free unless embedded in another product shines through the quick installation and setup, and pleases the new database user with SQL language extensions that are nearly intuitive. For example, the SHOW DATABASES command shows a list of databases you have permission to see. Experienced database administrators can install, configure, and bring a MySQL server online in less than fifteen minutes. If the installation process is packaged it can be done in five minutes. We look at the installation process in more detail in Chapter 2. The reliability of MySQL played a role in MySQL s rise to become, as stated at www.mysql.com, the world s most popular open source database. In addition to this reliability, MySQL operates on a wide range of hardware and operating systems from laptops to multi-core servers. Though benchmark comparisons can be slanted to benefit one server or another, the various benchmarks available show that MySQL competes with and frequently beats competing database servers. Company background MySQL server has been downloaded more than 100 million times. MySQL is open source software. An admittedly simple definition of open source software is software that is freely available (including source code) with free redistribution. Source code is the source of a program the file(s) containing the original programming language code, which can be read, discussed, and learned from, just as the words of a book can. The roots of MySQL server are found in a database system called Unireg that was developed by Michael Monty Widenius for a Swedish company called TcX during the 1980s. The initial release of MySQL server was created in 1995 when Monty added an SQL interface to Unireg. Shortly after, David Axmark recommended MySQL server be released under a dual licensing model, where it would be available for widespread free use but could also be used in situations that require a more restrictive licensing use (such as in embedded devices). David and Monty, together with Allan Larsson, founded MySQL AB in 1995. MySQL AB was the company that, until its acquisition by Sun Microsystems in January 2008, provided support and service for the MySQL database in addition to developing most of the code. In 2001 MySQL began supporting transactions with the integration of the BDB and InnoDB engines. This allowed for safer handling of concurrent write operations, which began the trend of adding features needed by enterprise environments. Over the years the feature set of the MySQL server has grown to cover almost any feature needed in an enterprise database server. Some might even argue that it has too many features! Innovation has continued; within months of readily accessible cloud computing environments 4

Introduction to MySQL 1 such as Amazon Web Services (http://aws.amzon.com), hobbyists and companies alike are deploying and using MySQL in creative environments. Table 1-1 shows an overview of MySQL server s release history, including important pre-release (Alpha and Beta) unstable versions as well as public stable releases that were determined to be generally available (GA). In Table 1-1, only the first release notes the new features, though all features mentioned in the pre-release Beta version were also released in the GA version. TABLE 1-1 MySQL Server Timeline Version Release Date Release Level New Features Internal release May 23, 1995 Public Release August 31, 1996 Binaries for Solaris Windows Release January 8, 1998 Windows 95 & Windows NT 3.23 June 2000 Beta BDB and InnoDB 3.23 January 2001 GA 4.0 August 2002 Beta Unions 4.0 March 2003 GA 4.1 June 2004 Beta Subqueries, prepared statements, B-tree and R-tree indexes 4.1 October 2004 GA 5.0 March 2005 Beta Stored procedure, cursors, views, triggers, and XA transactions. 5.0 October 2005 GA 5.1 May 2006 Beta Partitioning, row-based replication, plug-in storage engine API, and event scheduler 5.1 November 2008 GA 6.0 April 2007 Alpha Falcon and Maria storage engines and online backup Community and Enterprise server versions In August of 2007 MySQL AB began offering the MySQL server in two different versions: MySQL Community and MySQL Enterprise. Although the code base of the two servers is similar, there are different levels of support for the servers. With MySQL Enterprise you purchase 5

Part I First Steps with MySQL one of four support packages in addition to receiving the MySQL server binaries and source code. Sun has a table of available options at www.mysql.com/products/enterprise/features.html. MySQL Community offers freely downloadable binaries with no support guarantee. When a database experiences problems the user is on his or her own to resolve those problems. MySQL Enterprise has more frequent releases than MySQL Community Server. Owners of the source code must be allowed to redistribute the source code in full this is required under the provisions of the GPLv2 license that governs MySQL distributions. The MySQL Community The MySQL community is a diverse population of both users of and contributors to MySQL, spread across the world. The large user community brings many opinions about what features are needed and discussions about the best methods to implement those features. Though this can sometimes bring about somewhat heated discussions, it also allows for honest and direct feedback that many companies may not hear. How to contribute You can contribute to MySQL server in a number of ways: Blogging: Many people who work on MySQL either full or part time write about their experiences online. These blogs can be valuable for learning more about the ins and outs of working with MySQL. Many of these blogs are aggregated at the Planet MySQL website (www.planetmysql.org). Mailing lists: The official public MySQL mailing lists are available at http://lists. mysql.com. The mailing lists are a great way to both contribute your knowledge and learn something new. The General Discussion list, in particular, has a wide range of topics. Dive in and take a look. IRC channels: Various IRC channels are available. These can often provide instant feedback and help with problems. One of the most popular is the #mysql channel on the Freenode IRC network (irc.freenode.net, or visit http://freenode.net for more information). User groups: Many active user groups exist around the world. It is a great experience to get together with other people who share a similar passion. Each month the user groups will have someone present on a topic relating to MySQL. One month it might be backups and recovery. The next month it might be about how to scale an application effectively. The place to look for a user group near you is www.meetup.com. If there is not a user group near you, consider starting one! Documentation: MySQL has some of the best software documentation available, located at http://dev.mysql.com/doc. Working on the documentation is the easiest way to directly contribute to the MySQL project. As MySQL continues to change it is necessary to keep the documentation up to date, so this is always an ongoing project. 6

Introduction to MySQL 1 Code: The MySQL server code is complex software. However, it is somewhat modular and there are areas where an experienced C or C++ coder can help out. For smaller projects you might want to investigate the MySQL forge (http://forge.mysql.com) where many projects find a home. These projects are in many coding languages including (among others) Perl, Python, PHP, bash, C, and even Ruby. MySQL Magazine: Do you like to write? Then MySQL Magazine (www.mysqlzine.net) might be your venue. Articles cover anything from coding to how-to articles on normal DBA activities. The audience is a large group of the best database administrators and developers in the world. Reasons to contribute Many people never do anything other than download MySQL server, read a tutorial or two, and install the software and use it. They never contribute in any manner. That is fine, but we think that you can have a far more positive experience by becoming part of the community and contributing what you can while learning about this fascinating server software. Though it is beyond the scope of this book to discuss the open source software philosophy in depth, openly and freely giving and receiving knowledge is the basis of this philosophy. Both code and knowledge are free to be shared. By doing so, everyone benefits from the exchange. Summary MySQL server has a long history of innovation. The community that has grown around MySQL provides learning experiences and teaching opportunities for database administrators old and young, veteran and newbie alike. This chapter covered: MySQL company history The original and continuing mission of the MySQL database MySQL server version and feature overview Where to find more information How you can contribute to MySQL server The MySQL Administrator s Bible covers all the topics you need to understand as a beginning MySQL database administrator. If you are a more advanced administrator switching from another database system, this book offers a unique look at where MySQL is different from the ISO SQL:2003 standard. After advancing to an intermediate level of familiarity with MySQL, the material on scaling and high availability, replication, metadata, and server tuning will continue to provide guidance. 7