Home |  MySQL Buzz |  FAQ |  Feeds |  Submit your blog feed |  Feedback |  Archive |  Aggregate feed RSS 2.0 English Deutsch Español Français Italiano 日本語 Русский Português 中文
Previous 30 Newer Entries Showing entries 91 to 120 of 411 Next 30 Older Entries

Displaying posts with tag: Professional (reset)

Why GRANT ALL is bad
+15 Vote Up -3Vote Down

A common observation for many LAMP stack products is the use of poor MySQL security practices. Even for more established products such as Wordpress don’t always assume that the provided documentation does what it best for you. As per my earlier posts where I detailed installation instructions and optimal permissions for both WordPress and Mediawiki, and not just directed readers to online documentation.

In this post I will detail why GRANT ALL is bad.

Let’s start with what GRANT ALL [PRIVILEGES] provides. As per the MySQL 5.1 Reference

  [Read more...]
You have to love the Planet MySQL voting system
+13 Vote Up -19Vote Down

Within a few hours my post Installing Mediawiki on Oracle Enterprise Linux LAMP stack got 5 negative votes.

Wow, I’d be glad if these people could felt so passionately about all the other CRUD on Planet MySQL that has ZERO to do actually do with MySQL.

Using a LAMP product, and providing instructions for operation can’t be a negative voting offense. So it can only be the words “Oracle Enterprise Linux”.

For those negative people out there that care enough to physically mark blogs let me share some facts with you. RedHat Enterprise Linux (RHEL) is the most widely used and support platform for production MySQL environments. CentOS and Oracle Enterprise Linux (OEL) provide via the

  [Read more...]
Installing Mediawiki on Oracle Enterprise Linux LAMP stack
+9 Vote Up -17Vote Down

A company wiki can be easily configured in under 10 minutes using Mediawiki the open source LAMP software that powers the top 10 website Wikipedia.

A company wiki is an ideal means for a centralized and user contributed documentation system. The following steps show you how to download, configure and get your Mediawiki site operational.

Software Pre-Requisites

  [Read more...]
Will Oracle kill MySQL?
+6 Vote Up -7Vote Down

I get asked this question often. It was mentioned again recently in a NYTECH executive breakfast with RedHat CIO Lee Congdon.

The short answer is No.

There is clear evidence that in the short to medium term Oracle will continue to promote and enhance MySQL. Some of these indicators include:

  [Read more...]
Speaking at Surge Scalability 2010 – Baltimore, MD
+1 Vote Up -1Vote Down

I will be joining a great list of quality speakers including John Allspaw, Theo Schlossnagle, Rasmus Lerdorf and Tom Cook at Surge 2010 in Baltimore, Maryland on Thu 30 Sep, and Fri Oct 1st 2010.

My presentation on “The most common MySQL scalability mistakes, and how to avoid them.” will include discussing various experiences observed in the field as a MySQL Consultant and MySQL Performance Tuning expert.

Abstract:

The most common mistakes are easy to avoid however many startups continue to fall prey, with the impact including large re-design costs, delays in new feature releases, lower staff productivity and less then ideal ROI. All growing and successful

  [Read more...]
If you missed MySQL Idiosyncrasies that BITE
+4 Vote Up -1Vote Down

I recently gave a webinar to the LAOUC and NZOUG user groups on MySQL Idiosyncrasies that BITE.

For the benefit of many viewers that do not use English as a first language my slides include some additional information from my ODTUG Kaleidoscope presentation in June.

Thanks to Francisco Munoz Alvarez for organizing.

MySQL Idiosyncrasies That Bite 2010.07 View more presentations from Ronald Bradford.
CORRECTION: MySQL Idiosyncrasies that BITE Webinar
+0 Vote Up -0Vote Down

If you have not looked at my recent presentation that I presented at ODTUG Kaleidoscope 2010, then feel free to join me on Tuesday, July 27, 2010 6:00 PM – 7:00 PM EDT tomorrow at 5pm EDT when I will giving a webinar on this talk. You can register online at https://www1.gotomeeting.com/register/730452824

3 webinars on Upgrading MySQL
+1 Vote Up -0Vote Down

The IOUG Online Education Series: Get Real with Upgrades will include next week 3 different MySQL webinars. These are:

  • MySQL 5.1: Why and How to Upgrade by Sheeri Cabral on Tuesday, July 27, 12:00 p.m. – 1:00 p.m. CT
  • MySQL Upgrades With No Downtime by Sean Hull on Wednesday, July 28, 12:00 p.m. – 1:00 p.m. CT
  • MySQL Upgrade Best Practices by Matt Yonkovit on Thursday, July 29, 12:00 p.m. – 1:00 p.m. CT

Each speaker will be covering different areas and reasons for considering and implementing a successful MySQL Upgrade.

Installing Wordpress on Oracle Enterprise Linux LAMP stack
+1 Vote Up -0Vote Down

A company blog can be easily configured in under 10 minutes using Wordpress, a popular open source LAMP product that runs a reported 12+ million blogs including those found at CNN, NY Times, Wall Street Journal (WSJ), ZDNet, MTV, People Magazine, Playstation and eBay.

A company blog is a great way for the dissemination of information to your user base as well as enabling a means of user feedback via comments.

The following steps show you how to download, configure and get your Wordpress blog operational.

Software Pre-Requisites

  [Read more...]
Reviewing your MySQL installation on Oracle Enterprise Linux
+5 Vote Up -1Vote Down

After successfully Installing MySQL, let us take a look at an operational MySQL instance on your Oracle Enterprise Linux server.

User Management

By default there will be a new mysql user and group created. This user is used to run the mysqld process is generally not used for any other purpose.

$ grep mysql /etc/{passwd,shadow,group}
/etc/passwd:mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/bash
/etc/shadow:mysql:!!:14796::::::
/etc/group:mysql:x:27:

Binaries

MySQL binaries are found in /usr/bin.

$ ls -l /usr/bin/mysql*
-rwxr-xr-x 1 root root  314568 Feb 16 17:45 /usr/bin/mysql
-rwxr-xr-x 1 root root  110776 Feb 16 14:39 /usr/bin/mysqlaccess
-rwxr-xr-x
  [Read more...]
Installing a LAMP stack on Oracle Enterprise Linux
+4 Vote Up -1Vote Down

After successfully installing MySQL on Oracle Enterprise Linux installing a LAMP (Linux/Apache/MySQL/PHP) stack can also be performed with a single command:

$ yum install -y httpd php php-mysql
# Start the Apache Httpd Process
$ /etc/init.d/httpd start

To test and confirm Apache Httpd and PHP, we can use the CLI browser lynx:

$ yum install -y lynx
$ echo "<? phpinfo() ?>" > /var/www/html/phpinfo.php
$ lynx http://localhost/phpinfo.php

If successful, you will find a web page that contains the following.

phpinfo() (p1 of 31)

   PHP Logo 

PHP Version 5.1.6

   System Linux localhost.localdomain 2.6.18-164.el5 #1 SMP Thu Sep 3
  [Read more...]
Installing MySQL on Oracle Enterprise Linux
+3 Vote Up -3Vote Down

One of the significant benefits of MySQL is it’s ease of use. Generally already installed on most Linux systems, MySQL can be installed by a single command if not yet present. On Oracle Enterprise Linux 5.4 you can use the following commands to check for MySQL, configure your yum repository and install MySQL.

# Check if already installed
$ rpm -qa | grep -i mysql

# Configure yum repository on new server
$ su -
$ cd /tmp
$ wget http://public-yum.oracle.com/public-yum-el5.repo
$ sed -e "s/enabled=0/enabled=1/" public-yum-el5.repo > /etc/yum.repos.d/public-yum-el5.repo

# Install MySQL
$ yum install -y mysql-server mysql

# Start and test MySQL Instance
$ /etc/init.d/mysqld start
$ mysql -uroot -e "SELECT VERSION"

+-----------+
|
  [Read more...]
Speaking at Oracle Open World 2010
+4 Vote Up -2Vote Down


I will be one of 18 MySQL speakers at Oracle Open World 2010 at the first ever MySQL Sunday. With a great diversity of technical, community and product talks this will be a great opportunity to get a cross section of MySQL content. Combined with Java One, this year’s Oracle Open World will include a lot more opportunity of technical and developer content then the more regular marketing material.

As the program chair for the first dedicated MySQL track at last month’s ODTUG Kaleidoscope 2010 our MySQL community now includes a larger number of target people. From the Oracle community come many highly technical and skilled resources, some with an understanding or appreciation of MySQL and many that are new to


  [Read more...]
Optimizing SQL Performance – The Art of Elimination
+3 Vote Up -0Vote Down

The most efficient performance optimization of a SQL statement is to eliminate it. Cary Millsap’s recent Kaleidoscope presentation again highlighted that improving performance is function of code path. Removing code will improve performance.

You may think that it could be hard to eliminate SQL, however when you know every SQL statement that is executed in your code path obvious improvements may be possible. In the sequence SQL was implemented sometimes easy observations can lead to great gains. Let me provide some actual client examples that were discovered by using the MySQL General Log.

Example 1

5 Query
  [Read more...]
What do MySQL Consultants do?
+4 Vote Up -0Vote Down

One role of a MySQL consultant is to review an existing production system. Sometimes you have sufficient time and access, and other times you don’t. If I am given a limited time here is a general list of things I look at.

  • Review Server architecture, OS, Memory, Disks (including raid and partition type), Network etc
  • Review server load and identify physical bottleneck
  • Look at all running processes
  • Look specifically at MySQL processes
  • Review MySQL Error Log
  • Determine MySQL version
  • Look at MySQL configuration (e.g. /etc/my.cnf)
  • Look at running MySQL Variables
  • Look at running MySQL status (x n times)
  • Look at running MySQL INNODB status (x n times) if used
  • Get Database and Schema Sizes
  • Get Database Schema
  • Review Slow Query Log
  • Capture query sample via
  •   [Read more...]
    Timing your SQL queries
    +2 Vote Up -1Vote Down

    When working interactively with the MySQL client, you receive feedback of the time the query took to complete to a granularity of 10 ms.

    Enabling profiling is a simple way to get more a more accurate timing of running queries. In the following example you can see the time the kernel took to run an explain, the query, and alter, and repeat explain and query.

    
    mysql> set profiling=1;
    mysql> EXPLAIN SELECT ...
    mysql> SELECT ...
    mysql> ALTER ...
    mysql> show profiles;
    +----------+------------+-------------------------
    | Query_ID | Duration   | Query
    +----------+------------+-------------------------
    |        1 | 0.00036500 | EXPLAIN SELECT sbvi.id a
    |        2 | 0.00432700 | SELECT sbvi.id as sbvi_i
    |        3 | 2.83206100 | alter table sbvi drop in
    |        4 | 0.00047500 | explain SELECT sbvi.id a
    |        5 | 0.00367100 | SELECT sbvi.id as sbvi_i
      [Read more...]
    Upcoming Conferences with dedicated MySQL content
    +4 Vote Up -1Vote Down

    We recently held a dedicated MySQL Track at ODTUG Kaleidoscope 2010 conference for 4 days. This is the first of many Oracle events that will begin to include dedicated MySQL content.

    If your attending OSCON 2010 in the next few weeks you will see a number of MySQL presentations.

    MySQL will be represented at Open World 2010 in September with MySQL Sunday. Giuseppe has created a great one page summary of speakers. This event is described as technical sessions, an un-conference and an fireside chat with Edward Screven. I’ve seen tickets listed at $50 or $75 for the day.

    Open SQL

      [Read more...]
    Improving MySQL Productivity – From Design to Implementation
    +2 Vote Up -1Vote Down

    My closing presentation at the dedicated MySQL track at ODTUG Kaleidoscope 2010 discussed various techniques and best practices for improving the ROI of developer resources using MySQL. Included in the sections on Design, Security, Development, Testing, Implementation, Instrumentation and Support were also a number of horror stories of not what to do, combined with practical examples of improving productivity.

    Increasing MySQL Productivity View more presentations from Ronald Bradford.
    MySQL Idiosyncrasies That Bite
    +2 Vote Up -0Vote Down

    The following are my slides that I presented at ODTUG Kaleidoscope 2010. This presentation talks about the MySQL defaults including a non-transactional state, silent data truncations, date management, and transaction isolation options. These are all critical for data integrity and consistency. I also cover in-depth topics including SQL_MODE, character sets and collations.

    MySQL Idiosyncrasies That Bite View more presentations from Ronald Bradford.
    Still room at Kaleidoscope for MySQL attendees
    +3 Vote Up -0Vote Down

    Today I received notice that next week’s Velocity conference is at maximum capacity. With just under 2 weeks before the start of ODTUG Kaleidoscope in Washington DC we still have room for late registrations. There is 4 days of MySQL content, free events and also a Sunday Symposium that includes talks on performance and high availability.

    Contact any of the MySQL speakers directly and you can receive a special 50% discount code. This is only for MySQL attendees.

    If you live in the DC area and only want the FREE option then come along and join use on Monday night for a free session and reception.

    ODTUG Kaleidoscope 2010
    July 27 – July 1
    Marriott Wardman Part Hotel
    2660 Woodley Road NW
    Washington, District Of Columbia 20008





      [Read more...]
    Oracle resources for the MySQL Community
    +2 Vote Up -4Vote Down

    While I have spent a lot of time recently helping the MySQL community interact with and integrate with various Oracle User Groups including ODTUG, IOUG, NoCOUG, NYOUG, DAOG I thought I’d share some resources for the MySQL Community that wanted to know more about Oracle.

    The Oracle family of products is huge. You only have to look at the acquisitions via Wikipedia to get an idea. The first thing is to narrow your search, e.g. Database, APEX, Middleware, BI, Hyperion, Financials, development via Java, PHP or Oracle Forms etc.

    While Oracle is a commercial product you can download all software for FREE via Oracle Technology Network. There is also documentation, forums, blogs and events.

    Some Oracle bloggers I have already been reading however

      [Read more...]
    Why is MySQL documentation search so wrong?
    +11 Vote Up -0Vote Down

    I just don’t get this I don not know what the technology is behind the search box at MySQL Documentation but it annoys me when I want to see the syntax of a command and Search can’t find the page, when a dedicated page exists and I’m using the exact syntax of both the command the title of the page. In this example the search was for SHOW WARNINGS.

    Google find the page as first link!

    I’ll have a MySQL shot to go!
    +0 Vote Up -0Vote Down

    Wednesday night of the MySQL track of ODTUG Kaleidoscope will include an evening with Last Comic Standing comedian, John Heffron. It should be great way to unwind after day 3 of the conference. Black vodka anybody.

    Check out the MySQL Schedule for more information of presentations for the 4 days. More details is also available here.

    When SET GLOBAL affects SESSION scope
    +0 Vote Up -0Vote Down

    We have all been caught out with using SET and not realizing that the default GLOBAL Scope (since 5.0.2) does not change the current SESSION scope.

    I was not aware until today that changing GLOBAL scope has some exceptions that also automatically affect SESSION scope.

    What I expected with a change in the GLOBAL scope is no affect SESSION scope. For example.

    mysql> SHOW GLOBAL VARIABLES LIKE 'read_buffer_size';
    +------------------+--------+
    | Variable_name    | Value  |
    +------------------+--------+
    | read_buffer_size | 131072 |
    +------------------+--------+
    1 row in set (0.00 sec)
    
    mysql> SHOW SESSION VARIABLES LIKE 'read_buffer_size';
    +------------------+--------+
    | Variable_name    | Value  |
    +------------------+--------+
    | read_buffer_size | 131072 |
    +------------------+--------+
    1 row in set (0.00 sec)
    
    mysql> SET GLOBAL
      [Read more...]
    Best Practices: Additional User Security
    +0 Vote Up -0Vote Down

    By default MySQL allows you to create user accounts and privileges with no password. In my earlier MySQL Best Practices: User Security I describe how to address the default installation empty passwords.

    For new user accounts, you can improve this default behavior using the SQL_MODE variable, with a value of NO_AUTO_CREATE_USER. As detailed via the 5.1 Reference Manual

    NO_AUTO_CREATE_USER

    Prevent the GRANT statement from automatically creating new users if it would otherwise do so, unless a nonempty password also is specified.

    Having set this variable I attempted to show the error of operation to demonstrate in my upcoming




      [Read more...]
    Eventually consistent Group Commit
    +0 Vote Up -0Vote Down

    Having just written an interview response about NoSQL concepts for a RDBMS audience it was poetic that an inconspicuous title “(4 of 3)” highlights that both a MySQL read scalable implementation via replication and a NoSQL solution can share a common lack of timely consistency of data. For the sake of Group Commit I hope my data is always consistent at some location at some point in time as soon as possible.

    In attempting to comment to Kristian Nielsen’s Fixing MySQL group commit (part 4 of 3) I was forced to watch an ad before I could even add a comment. Go jump Live Journal, it’s quicker to write my own blog post.

    And if anybody is still reading, I had just written the following.

    “There is clearly a place for NoSQL solutions. The two primary types of

      [Read more...]
    mk-query-digest Tips – Showing all hosts & users
    +1 Vote Up -1Vote Down

    The Maatkit tools provide a suite of additional MySQL commands. There is one command I use constantly and that is mk-query-digest.

    Unfortunately the documentation does leave a lot to be desired for usability. While throughout, it is a man page and not a user guide. Several of us have discussed writing better documentation however it’s always a matter of time. I have however learned a number of tips and I’d like to share them in smaller digests.

    The first is showing additional display. Maatkit works on truncating per line output to a reasonable length of 73 characters?

    One of those lines is the list of hosts that connected to MySQL for a query, for example.

    # Hosts                  4 192.168.40... (2), 192.168.40... (2)... 2
      [Read more...]
    tcpdump errors on FreeBSD for mk-query-digest
    +0 Vote Up -0Vote Down

    While I use this tcpdump command for MySQL query analysis with mk-query-digest, I found recently that it didn’t work on FreeBSD

    $ tcpdump -i bge0 port 3306 -s 65535 -x -n -q -tttt -c 5
    tcpdump: syntax error
    

    It left me perplexed and reading the man page seemed to indicate my options were valid. I tried a few variances just to be sure without success.

    $ tcpdump -i bge0 -c 5 port 3306 -x
    tcpdump: syntax error
    $ tcpdump -i bge0 -c 5 port 3306 -q
    tcpdump: syntax error
    $ tcpdump -i bge0 -c 5 port 3306 -tttt
    tcpdump: syntax error
    

    The solution was actually quite simple in the end, it had nothing to do with the commands, it had everything to do with the order of them. Placing port as the last option solved the problem.

    $
      [Read more...]
    MySQL Best Practices: User Security
    +1 Vote Up -0Vote Down

    It is critical that you do not use the default MySQL installation security, it’s simply insecure.

    Default Installation

    When installed, MySQL enables any user with physical permissions to the server to connect to the MySQL via unauthenticated users. MySQL also provides complete access to all super user privileges via the ‘root’ user with no default password.

    $ mysql -uroot
    mysql> SELECT host,user,password FROM mysql.user;
    +--------------+------+-------------------------------------------+
    | host         | user | password                                  |
    +--------------+------+-------------------------------------------+
    | localhost    | root |                                           |
    | server.local | root |                                           |
    | 127.0.0.1    | root |                                           |
    | localhost
      [Read more...]
    MySQL Monitoring – What’s really needed
    +2 Vote Up -1Vote Down

    The implementation of MySQL Monitoring is critical for any organization that uses a database and wants to avoid the inevitable disaster. There are 3 important components that all serve a key purpose to “MySQL Monitoring” in general:

    • Monitoring – Historical and graphical information
    • Alerting – Tell me when something is wrong
    • Dashboard – The State of NOW

    Monitoring

    There is no one option for Monitoring that is significantly better then another. A short list of what’s on offer can be found at http://monitoring-mysql.com/monitoring-products. What’s important is you have monitoring in place so historically you can review situations and compare across your servers and enabling the better identification of physical or

      [Read more...]
    Previous 30 Newer Entries Showing entries 91 to 120 of 411 Next 30 Older Entries

    Planet MySQL © 1995, 2013, Oracle Corporation and/or its affiliates   Legal Policies | Your Privacy Rights | Terms of Use

    Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.