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 中文
Showing entries 1 to 30 of 267 Next 30 Older Entries

Displaying posts with tag: skysql (reset)

MySQL Slave Scaling and more
+2 Vote Up -0Vote Down

Jean-François talks about binlog servers. Take a look here: http://blog.booking.com/mysql_slave_scaling_and_more.html

MariaDB 10.0.12 Overview and Highlights
+1 Vote Up -0Vote Down

MariaDB 10.0.12 was recently released, and is available for download here:

https://downloads.mariadb.org/mariadb/10.0.12/

This is the third GA release of MariaDB 10.0, and 13th overall release of MariaDB 10.0.

This is primarily a bug-fix release.

Here are the main items of note:

  • Updated Spider storage engine to version 3.2.4.
  • Updated Connect engine.
  • Updated pcre to version 8.35.
  • Exists-to-In optimization is now enabled by default.
  •   [Read more...]
    MySQL 5.5.38 Overview and Highlights
    +0 Vote Up -0Vote Down

    MySQL 5.5.38 was recently released (it is the latest MySQL 5.5, is GA), and is available for download here:

    http://downloads.skysql.com/archive/index/p/mysql/v/5.5.38

    This release, similar to the last 5.5 release, is mostly uneventful.

    Out of the mere 13 bugs, most were benign, but I thought there were two worth mentioning (just because one is a slight performance improvement for InnoDB, and the other relates to slave consistency, so always important to see if it could affect you):

  • InnoDB: For each insert, memset would be called three times to allocate memory for system fields. To reduce CPU usage, the three memset calls are now combined into a single call. (Bug #17858679, Bug #71014)
  • Replication: When
  •   [Read more...]
    MariaDB 5.5.38 Overview and Highlights
    +1 Vote Up -0Vote Down

    MariaDB 5.5.38 was recently released (it is the latest MariaDB 5.5), and is available for download here:

    https://downloads.mariadb.org/mariadb/5.5.38/

    This is a maintenance release, and so there are not too many big changes of note, just a number of normal bug fixes. However, there are a few items worth mentioning:

      [Read more...]
    MySQL 5.6.19 Overview and Highlights
    +2 Vote Up -0Vote Down

    MySQL 5.6.19 was recently released (it is the latest MySQL 5.6, is GA), and is available for download here.

    I should actually call this post “5.6.18 and 5.6.19 Overview and Highlights”.

    The 5.6 “Release Notes” Index provides an entry/changelog for 5.6.18 and says it was released 2014-04-11. However, it’s not available in the community download archives. This isn’t mentioned in the 5.6.18 changelogs, but it is in the 5.6.19

      [Read more...]
    MariaDB is the default implementation of MySQL in Red Hat Enterprise Linux 7
    +8 Vote Up -2Vote Down

    It was announced that MariaDB is now the default implementation of MySQL in the newly released Red Hat Enterprise Linux 7.

    News of the Red Hat Enterprise Linux 7 can be found here.

    And mention of MariaDB replacing MySQL as the default implementation is referenced in their release notes here.

    The full change log entry reads:

    MariaDB 5.5

    • MariaDB is the default implementation of MySQL in Red Hat Enterprise Linux 7. MariaDB is a community-developed fork of the MySQL database project, and provides a replacement for MySQL. MariaDB preserves API and ABI
      [Read more...]
    What exactly does log_warnings=2 log?
    +2 Vote Up -0Vote Down

    Have you ever wondered exactly does log_warnings=2 log? Well, I have, and finally decided to check the code. (The manual used to mention setting this to 2 for diagnosing some connection-related problems, but I didn’t run into that comment in my most recent search.)

    Basically, in recent 5.6 source code, we find “log_warnings > 1″ in 7 files. In 5.5 source, it is only in 5 files. Here are the 7 files in 5.6:

    filesort.cc (line 460)
    log_event.cc (lines 4873, 10020, 11209)
    rpl_master.cc (line 912)
    rpl_rli_pdb.cc (lines 1538, 1596, 1735, 2066)
    rpl_slave.cc (lines 3585, 4684, 5405, 5436)
    sql_acl.cc (lines 9591, 9613, 11351)
    sql_connect.cc (line 791)

    Long story short, the main (most common) ones are when a filesort fails (filesort.cc) or a failed login occurs (sql_acl.cc). Then there are

      [Read more...]
    MaxScale 0.7.0 Overview and Highlights
    +1 Vote Up -0Vote Down

    MaxScale 0.7.0 was recently released (it is the 4th alpha, with the beta on the near horizon), and is available for download here.

    The release contains a number of new enhancements as well as 8 bugs fixes.

    Enhancements:

  • Galera Support: Enhanced support for Galera cluster to allow Galera to be used as a High Available Cluster with no write contention between the nodes. MaxScale will control access to a Galera Cluster such that one node is designated as the master node to which all write operations will be sent. Read operations will be sent to any of the remaining nodes that are part of the cluster. Should the currently elected master node fail MaxScale will automatically promote one of the remaining nodes to become the new master node.
  • Multiple Slave Connections: The Read/Write
  •   [Read more...]
    MaxScale 0.6.0 Overview and Highlights
    +1 Vote Up -0Vote Down

    MaxScale 0.6.0 was recently released (it is the 3rd alpha, with the beta on the near horizon), and is available for download here.

    The particular release only contains 2 great additions and 2 important fixes (and note development continues with the 1.0 (GA) features, but these have not been put into this alpha version).

    Important Additions:

  • A feature-complete read/write splitting module, i.e. read and write operations are now balanced in a smarter way to master or slave servers.
  • New client-based features, such as a version string that provides compatibility with the major connectors, the ability to connect through the root user and the use of the Unix socket when MaxScale is co-located with a client application on the same server.
  • Important Bug Fixes:

  • The new parameter
  •   [Read more...]
    MariaDB 10.0.11 Overview and Highlights
    +5 Vote Up -0Vote Down

    MariaDB 10.0.11 was recently released, and is available for download here:

    https://downloads.mariadb.org/mariadb/10.0.11/

    This is the second GA release of MariaDB 10.0, and 12th overall release of MariaDB 10.0.

    This is primarily a bug-fix release.

    Here are the main items of note:

  • Updated TokuDB engine to version 7.1.6
  • Updated Spider storage engine to version 3.2 (now Gamma)
  • Updated XtraDB storage engine to version 5.6.17-65.0
  • Updated InnoDB storage engine to version 5.6.17
  • Updated
  •   [Read more...]
    MaxScale 0.6
    +0 Vote Up -0Vote Down
    Kudos to the SkySQL Engineering team, who released the 3rd alpha version of MaxScale, a database proxy for MySQL, MariaDB and Percona servers, labeled MaxScale 0.6.
    This version comes with two important additions:
    • A feature-complete read/write splitting module, i.e. read and write operations are now balanced in a smarter way to master or slave servers.
    • New client-based features, such as a version string that provides compatibility with the major MariaDB and MySQL connectors, the ability to connect through the root user and the use of the unix socket when MaxScale is co-located with a client application on the same server.

    Binaries and source code are “hidden” here: http://downloads.skysql.com/files/SkySQL/MaxScale.
    The project is on GitHub: https://github.com/skysql/MaxScale/
    Other helpful links are:




      [Read more...]
    Another reason for Xtrabackup error “log block numbers mismatch”
    +0 Vote Up -0Vote Down

    I ran into an issue the other day where Xtrabackup was not completing and threw the following error:

    xtrabackup: error: log block numbers mismatch:
    xtrabackup: error: expected log block no. 134860907,
    but got no. 176803931 from the log file.
    xtrabackup: Error: xtrabackup_copy_logfile() failed.

    When researching this error, I found that this error is generally caused when the following 2 conditions must are met, and this is generally when “xtrabackup cannot catch up with log writing activity on the server, so the log wraps around before xtrabackup can copy records before they are overwritten”:

  • The log block numbers must wrap around, which only happens once per 1 GB of log writes.
  • The wrap-around point must be between the last checkpoint and the current log tail at the time the backup starts.
  • Discussed here:

      [Read more...]
    The Other MariaDB Blog
    +1 Vote Up -0Vote Down

    This is the blog of the MariaDB Foundation in particular and the MariaDB project in general. It is used to announce new MariaDB versions, for posts from MariaDB developers about new features, and for news from or about the MariaDB Foundation itself, among other things. For many this is the MariaDB blog, and on behalf of the MariaDB Foundation, welcome! We’re glad you’re here. Thanks for stopping by!

    What you may not know is that there’s another MariaDB blog over at https://mariadb.com/blog run by the fine folks at SkySQL (full disclosure: I work for SkySQL, but my posts here are on behalf of the MariaDB project and the Foundation). This other MariaDB blog contains posts about SkySQL’s commercial MariaDB offerings (naturally) but also a lot of other

      [Read more...]
    MySQL related IRC discussion channels
    +0 Vote Up -0Vote Down

    There are many MySQL related IRC discussion channels as the ecosystem itself grows. I join the following. Are there any that I’m missing?

    Freenode (irc.freenode.net):

    • #mysql – main channel for all kinds of end user MySQL related discussions (the noisiest of the lot, naturally)
    • #maria – main channel for all kinds of MariaDB related discussions
    • #webscalesql – for all kinds of WebScaleSQL discussions
    • #percona – main channel for all kinds of Percona related discussions
    • #tokutek – main channel for Tokutek discussions (TokuDB or TokuMX)
    • SkySQL-specific channels: #maxscale and #mariadb-mgr

    OFTC (irc.oftc.net):

    • #debian-mysql – for all kinds of Debian MySQL related bits (packaging, bugs, etc.)
      [Read more...]
    WebScaleSQL on Windows? I wish, but not quite yet, it seems …
    +1 Vote Up -0Vote Down

    For fun, I tried building WebScaleSQL on Windows, even though it’s not [yet?] a support platform.

    Using the following (as I would to build MySQL/MariaDB):

    cd c:\mysql\webscalesql-5.6.16
    mkdir bld
    cd bld
    cmake ..
    cmake --build . --config relwithdebinfo --target package

    I end up with:

    ...
        238 Warning(s)
        110 Error(s)
    Time Elapsed 00:05:08.53

    Looking through the output, the main error is this:

    C:\mysql\webscalesql-5.6.16\include\atomic_stat.h(33):
    fatal error C1083: Cannot open include file: 'atomic':
    No such file or directory
    [C:\mysql\webscalesql-5.6.16\bld\storage\innobase\innobase.vcxproj]

    Of course the directory does exist, and permissions are correct.

    C:\mysql\webscalesql-5.6.16\include\atomic_stat.h contains the following line:

    #include <atomic>

    And this exists:

      [Read more...]
    Resolving Error 1918, System Error Code 126, When Installing MySQL ODBC Driver
    +1 Vote Up -0Vote Down

    If you are installing MySQL ODBC Driver and encounter the following error:

    Error 1918. Error installing ODBC driver MySQL ODBC 5.1 Driver,
    ODBC error 13: The setup routines for the MySQL ODBC 5.1 Driver
    could not be loaded due to system error code 126:
    The specified module could not be found.
    ...\myodbc5S.dll).. Verify...

    Then you will need to install the Microsoft Visual C++ 2010 Redistributable Package (select the appropriate one for your OS architecture below):

    64-bit version:

    http://www.microsoft.com/en-us/download/confirmation.aspx?id=14632

    32-bit version:

    http://www.microsoft.com/en-gb/download/details.aspx?id=5555

    After installing that, then re-attempt

      [Read more...]
    Resolving MySQL ODBC “architecture mismatch” Error
    +0 Vote Up -0Vote Down

    If you attempt to use ODBC to run a MySQL application and run into the following error:

    [Microsoft][ODBC Driver Manager] The specified DSN contains an
    architecture mismatch between the Driver and Application

    This means there is a 64-bit versus 32-bit mismatch.

    Most likely, you’re running 64-bit Windows, as well as 64-bit MySQL ODBC connector, but the application is 32-bit.

    If this is the case, you will also need to install the 32-bit MySQL ODBC connector, and then create the connection from the 32-bit ODBC.

    odbcad32.exe is the file to create the connections. Both 64-bit and 32-bit files have the same name, just differing locations.

    This is the default location for the 64-bit ODBC:

    C:\Windows\System32\odbcad32.exe

    This is the default location for the 32-bit ODBC:

    C:\Windows\SysWOW64\odbcad32.exe

    And should you need to

      [Read more...]
    Looking for Slave Consistency: Say Yes to –read-only and No to SUPER and –slave-skip-errors
    +0 Vote Up -0Vote Down

    The biggest concern with a slave is to ensure your data is consistent with the master! End of story!

    3 of the biggest things I see when dealing with out-of-sync slaves:

  • Many users do not use the --read-only option on their slaves.
  • Some of those who do often have numerous users with SUPER who can still perform writes.
  • Many users simply use --slave-skip-errors=… to avoid common errors.
  • Of course, if you have a slave, definitely use the --read-only option.

    However, SUPER users can still write on slaves with --read-only, so blindly granting SUPER to all users just to save a little time when creating users won’t help. I’d suggest to use SUPER as sparingly as possible (not to mention it’s good for security also).

    And the use of --slave-skip-errors=… is generally just a quick fix to avoid

      [Read more...]
    MySQL 5.7.4 Overview and Highlights
    +2 Vote Up -0Vote Down

    MySQL 5.7.4 was recently released (it is the latest MySQL 5.7, and is the “m14″ or “Milestone 14″ release), and is available for download here and here.

    The 5.7.4 changelog begins with the following, so I felt it appropriate to include it here as well.

    In Memoriam:

    “This release is dedicated to the memory of two young engineers of the MySQL Engineering family, Astha and Akhila, whom we lost while they were in their early twenties. This is a small remembrance and a way to recognize your contribution to the 5.7 release. You will be missed.”

      [Read more...]
    MySQL 5.6.17 Overview and Highlights
    +1 Vote Up -0Vote Down

    MySQL 5.6.17 was recently released (it is the latest MySQL 5.6, is GA), and is available for download here:

    For this release, I counted 7 “Functionality Added” and/or “Incompatible Change” fixes:

  • Incompatible Change: The AES_ENCRYPT() and AES_DECRYPT() functions now permit control of the block encryption mode and take an optional initialization vector argument.
  • Incompatible Change: The ERROR_FOR_DIVISION_BY_ZERO, NO_ZERO_DATE, and NO_ZERO_IN_DATE SQL modes now are deprecated and setting the sql_mode value to include any of them generates a warning. In MySQL 5.7, these modes do nothing. Instead, their effects are included in the effects of
  •   [Read more...]
    MySQL 5.5.37 Overview and Highlights
    +2 Vote Up -0Vote Down

    MySQL 5.5.37 was recently released (it is the latest MySQL 5.5, is GA), and is available for download here:

    http://downloads.skysql.com/archive/index/p/mysql/v/5.5.37

    This release, similar to the last 5.5 release, is mostly uneventful.

    There was one new feature added (Solaris-specific + obscure), and only 21 bugs fixed.

    The new feature is this:

    • On Solaris, mysql_config –libs now includes -R/path/to/library so that libraries can be found at runtime.

    Out of the 21 bugs, most were benign, but there was one definitely worth mentioning (because it is a regression bug with performance degradation):

    • A regression introduced by Bug #14329288 would result in a performance degradation when a compressed table does not fit into memory. (Bug #18124788,
      [Read more...]
    Improve your Stored Procedure Error Handling with GET DIAGNOSTICS
    +1 Vote Up -0Vote Down

    In a previous post, I discussed debugging stored procedures with RESIGNAL, which is of great value when troubleshooting errors raised by your stored procedures, functions, triggers, and events as of MySQL/MariaDB 5.5.

    However, as of MySQL 5.6 and MariaDB 10.0, there is GET DIAGNOSTICS, which can be used to get the exact error details as well.

    RESIGNAL just outputs the error, as it comes from the server, for instance:

    ERROR 1146 (42S02): Table 'db1.t1' doesn't exist

    You may not want the error just written to the console, or perhaps you want to at least control how it is written.

    It’s common to see exit handler code in the following form:

    DECLARE EXIT HANDLER FOR SQLEXCEPTION
    BEGIN
    SELECT ...;
    END;

    Where the SELECT outputs something not very useful in many cases.

    With GET DIAGNOSTICS, you can

      [Read more...]
    Quickly Debugging Stored Procedures, Functions, Triggers, and Events with RESIGNAL
    +2 Vote Up -0Vote Down

    I was recently debugging a stored procedure and could not easily identify the underlying reason for why it was failing.

    It had a standard exit handler catch-all for SQLEXCEPTION, which was:

    DECLARE EXIT HANDLER FOR SQLEXCEPTION
    BEGIN
    SELECT ...;
    END;

    When there was an error, it didn’t really output anything useful.

    As of MySQL 5.5, there is RESIGNAL:

    “RESIGNAL passes on the error condition information that is available during execution of a condition handler within a compound statement inside a stored procedure or function, trigger, or event.”

    http://dev.mysql.com/doc/refman/5.5/en/resignal.html

    There is also some good information about it here as well:

      [Read more...]
    InnoDB Primary Key versus Secondary Index: An Interesting Lesson from EXPLAIN
    +0 Vote Up -0Vote Down

    I ran into an interesting issue today, while examining some EXPLAIN outputs, and wanted to share the findings, as some of this is undocumented.

    Basically, you can start with a very simple InnoDB table – 2 INT columns, Primary Key (PK) on the 1st column, regular index on the 2nd:

    CREATE TABLE `t1` (
      `id1` int(10) unsigned NOT NULL,
      `id2` int(10) unsigned DEFAULT NULL,
      PRIMARY KEY (`id1`),
      KEY `id2` (`id2`)
    ) ENGINE=InnoDB;

    The query is:

    SELECT id1 FROM t1;

    This is a straight-forward query with no WHERE clause.

    Given no WHERE clause, we know there will be a full table or index scan. Let’s look at EXPLAIN:

    mysql> EXPLAIN SELECT id1 FROM t1\G
    *************************** 1. row ***************************
               id: 1
      select_type: SIMPLE
            table: t1
             type: index
    possible_keys: NULL
              key: id2
          key_len:
      [Read more...]
    MariaDB 10.0.9 Overview and Highlights
    +1 Vote Up -0Vote Down

    MariaDB 10.0.9 was recently released, and is available for download here:

    https://downloads.mariadb.org/mariadb/10.0.9/

    This is the second RC (“Release Candidate”) release of MariaDB 10.0, and 10th overall release of 10.0. All features planned for MariaDB 10.0 GA are included in this release.

    There were 6 notable changes in MariaDB 10.0.9:

  • InnoDB upgraded to version 5.6.15
  • Extended-keys optimization is now enabled by default.
  • MariaDB can be compiled to use the system’s PCRE library.
  • Added MASTER_GTID_WAIT() and
  •   [Read more...]
    MariaDB 5.5.36 Overview and Highlights
    +1 Vote Up -0Vote Down

    MariaDB 5.5.36 was recently released (it is the latest MariaDB 5.5), and is available for download here:

    https://downloads.mariadb.org/mariadb/5.5.36/

    This is a maintenance release, and so there are not too many big changes of note, just a number of normal bug fixes. However, there are a couple items worth mentioning:

  • Includes all bugfixes and updates from: MySQL 5.5.36
  • TokuDB is now included in RPM packages for CentOS 6 on x86-64
  • Note this release did not contain the bugfixes from XtraDB 5.5.36 yet. There is one bug fix in XtraDB 5.5.36 that is fairly serious, so if you are a *heavy* XtraDB+ user, I might wait for MariaDB 5.5.37 to be released, so you get this fix. I should note the bug was partially fixed in

      [Read more...]
    Shard-Query supports background jobs, query parallelism, and all SELECT syntax
    +0 Vote Up -0Vote Down

    SkySQL just blogged about a tool to schedule long running MySQL jobs, prevent too many queries from running simultaneously, and stores the results in tables.  It even uses Gearman.  You will note that the article says that it uses PAQU, which uses Shard-Query.

    I think PAQU was created for two reasons.  A) Shard-Query lacked support for fast aggregation of STDDEV and VARIANCE (this has been fixed), and B) their data set requires “cross-shard queries”.  From what I can see though, their type of cross-shard queries can be solved using subqueries in the FROM clause using Shard-Query, instead of using a customized (forked) version of Shard-Query.  It is unfortunate, because my recent improvements to Shard-Query have to be ported into PAQU by the PAQU authors.

    I’d like to encourage you to look at Shard-Query

      [Read more...]
    An update on the MariaDB Audit Plugin and a new version of it
    +0 Vote Up -0Vote Down

    I’m happy to announce that a new version of the MariaDB Audit Plugin is available. Version 1.1.5 can be downloaded here. As you can see the Audit Plugin is available from SkySQL, who has developed the plugin.

    However, now with the Audit Plugin being GA for a couple of months since 7th of November last year and customers using it in production, SkySQL has decided to contribute the Audit Plugin to the MariaDB project and I’m happy to tell you that starting from MariaDB versions 5.5.37 and 10.0.9 the Audit Plugin will be included by default. Notice that these versions of MariaDB aren’t yet released.

    The MariaDB Audit Plugin introduces the capabilities of tracking user access to data. By having the Audit Plugin available by default in MariaDB, all users can

      [Read more...]
    Correlating OS Thread IDs from SEMAPHORES Section to TRANSACTIONS Section
    +3 Vote Up -0Vote Down

    I’m frequently tracking semaphores waits, and if you’ve examined them before, it can be a little matching up the threads listed in the SEMAPHORES section with the transactions in the TRANSACTIONS section.

    Semaphore waits are related to internal synchronization between threads in mysqld, and not directly to row locks or other items associated with user queries, so that’s why the SEMAPHORES section only reports the OS thread id.

    Fortunately, the TRANSACTIONS sections also reports the OS thread handle, but in hex format.

    Here is an example semaphore wait:

    --Thread 1079654736 has waited at ibuf0ibuf.c line 3549
    for 943.00 seconds the semaphore:
    X-lock (wait_ex) on RW-latch at 0x7f2a48830bf8 '&block->lock'
    a writer (thread id 1079654736) has reserved it in mode wait exclusive
    number of readers 1, waiters flag 1, lock_word: ffffffffffffffff
    Last time read locked
      [Read more...]
    Getting Started with the Spider Storage Engine
    +1 Vote Up -0Vote Down

    If you’re like me, you’ve probably heard of the Spider storage engine, but not used it yet.

    While it has been available for some years now, I just simply haven’t used it before until now.

    I suspect that has to do with ease of installation. Previously, one had to compile it with MySQL in order to use it, which excludes a lot of people. However, in MariaDB 10.0 (as of 10.0.4), it is very easy to add and use.

    And with MariaDB 10.0.8 being declared RC, combined with Spider’s sheer usefulness, I only suspect its usage will become more and more widespread.

    What is the Spider storage engine, and why will it be useful?

    “The Spider storage engine is a storage engine with built-in sharding features. It supports partitioning and xa transactions, and allows tables of different MariaDB instances to be handled as if they were on the same instance. It

      [Read more...]
    Showing entries 1 to 30 of 267 Next 30 Older Entries

    Planet MySQL © 1995, 2014, 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.