My former boss, Marten Mickos, has created an excellent new resources for early stage founders, managers and execs called www.Schoolofherring.com. Each post has a short write up and often a 2-3 minute video covering a topic such as giving feedback, Peter Drucker's principles of good management, what it takes to build an effective team, hiring for strength etc. Some of these topics are very practical, like how to send good email, others are more thought-provoking, such as the notion that …
[Read more]
The setup_actors table in MySQL Performance Schema can be used to
specify what users and hosts one wants to have instrumentation
enabled for. By default, connections from all users and hosts are
instrumented:
mysql> select * from performance_schema.setup_actors; +------+------+------+ | HOST | USER | ROLE | +------+------+------+ | % | % | % | +------+------+------+ 1 row in set (0.00 sec)
You can then use standard SQL against this setup_actors table in order to specify what users and hosts you want to have instrumentation enabled for.
But what about the case where you want to enable instrumentation for everyone except the …
[Read more]Introduction
MySQL Enterprise Backup 3.12.0 (MEB) introduces a new feature for restoring an InnoDB table from a backup. Now it is possible to rename the table during restore. This is useful when the user wants to restore a table from a backup without overwriting the existing version of the table in the database.
The following example illustrates how the renaming feature could be used. Suppose that the DBA has deleted three rows from a table T1 by mistake and he now wishes to get them back from a backup. He wants to leave the database online and to restore the 3 deleted rows from a TTS backup (a backup created with the --use-tts option) that contains the table T1. He can do this with this feature in three steps:
- He restores with MEB the table T1 from a TTS backup renaming
it to T2.
- He uses MySQL client to issue SQL statements to …
Explaining and providing solutions of MySQL error 1449: The user specified as a definer does not exist using SQL SECURITY INVOKER and DEFINER.
The post How to fix definer does not exist error 1449 MySQL first appeared on Change Is Inevitable.
A student posed the question about why table names are case sensitive. That’s because case sensitive table names are the default installation, as qualified in the MySQL documentation. You can verify that with the following query:
SELECT CASE
WHEN @@lower_case_table_names = 1 THEN
'Case insensitive tables'
ELSE
'Case sensitive tables.'
END AS "Table Name Status";
|
The default value returned on Linux is:
+------------------------+ | Table Name Status | +------------------------+ | Case sensitive tables. | +------------------------+ 1 row in set (0.00 sec) |
The default value for the lower_case_table_names
value on the Windows OS is 1 not …
MongoDB 3.0 was recently released. Instead of focusing on what’s new – that is so easy to find, let’s rather talk about something that has not changed a lot since the early MongoDB days. This topic is sharding and most specifically: how to choose a good sharding key. Note that most of the discussion will also apply to MySQL, so if you are more interested in sharding than in MongoDB, it could still be worth reading.
When do you want to shard?
In general sharding is recommended with MongoDB as soon as any of these conditions is met:
- #1: A single server can no longer handle the write workload.
- #2: The working set no longer fits in memory.
- #3: The dataset is too large to easily fit in a single server.
Note that #1 and #2 are by far the most common reason why people need sharding. Also note that in the MySQL world, #2 does not imply that you need sharding.
…
[Read more]
If a table is partitioned then that makes it easy to maintain.
Table has grown so huge and the backups are just keep running
long then probably you need to think of archival or purge.
Purge the data if you don't want data from old partitions
just by doing truncate or drop of those partitions which
completes momentarily without locking the table for a long
time
Archival can be done couple of ways.
We can take mysqldump (preferably from a slave) with a
where condition to filter out the data you don't want to copy.
And then import the dump file to archive database. check this
link out for mysqldump with where clause .. and once data is
copied, …
So you want to contribute to OpenStack? I can help!
For the last year or so I have been involved with OpenStack and more specifically the Trove (DBaaS) project as sort of an ambassador for Percona, contributing bits of knowledge, help and debugging wherever I could and thought I would share some of my experience with others that wanted to get involved with OpenStack development, documentation, testing, etc. Getting started with OpenStack contributions is also the idea behind my talk next month at Percona OpenStack Live 2015. (Percona Live attendees have access to OpenStack Live)
Back at the last OpenStack Conference and Design Summit in Paris last November, I had the amazing opportunity to attend the two-day …
[Read more]In addition to our general CJK support, as detailed in this blog post, we’ve also added a MeCab parser. MeCab is a Japanese morphological analyzer, and we now have a full-text plugin parser based on it!
How Would I Use It?
- Set the mecab_rc_file option — mecab_rc_file is a read-only system variable pertaining to the MeCab parser. The mecabrc file that it points to is a configuration file required by MeCab, …
When reading a MySQL Query Execution Plan (QEP) produced by the
EXPLAIN command, generally one of the first
observations is to validate an index is being used per table
(i.e. per row of output). In MySQL, this is observed with the
key column.
In the following two simple single table examples we see the use of the PRIMARY key. To the untrained eye this may lead to assume that the right index is being used.
Example 1
+----+-------------+----------------+-------+---------------+---------+---------+------+------+-------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+----------------+-------+---------------+---------+---------+------+------+-------------+ | 1 | SIMPLE | txxxxxxxxxxxx | index | NULL | PRIMARY | 4 | NULL | 100 | Using …[Read more]