There was an interesting but hard to read post on StackOverflow about how 'insert select delete'
data from a MySQL JSON data type column. The first line of
the writer's problem is a little confusing '
In order to record user mac_address and count mac_address to
restrict user login's pc or notebook to control user available
max for example (it's work)' but the examples reveled more
about what was desired. The idea was to track MAC address used by
various users and the author of the question was wondering how to
up data a JSON Array of values with JSON_INSERT. INSERT is
for inserting and the better choice would be JSON_ARRAY_APPEND or
JSON_ARRAY_INSERT. But what caught my eye was the
second question: Select sql command for json column ? could be …
“We made it a point to hire really smart, visionary
people and then let them do their work.
I wanted to delegate and let people be in charge of things. My
own decision-making process was to decide who got to decide. To
make decisions, you have to first outline the problem, and if you
hire really great people, they’re going to know more about the
problem they’re dealing with than you ever will.”–Scott
McNealy
I have interviewed Scott McNealy. Scott is a Silicon Valley pioneer, most famous for co-founding Sun Microsystems in 1982. We talked about Innovation, AI, Big Data, Redis, Curriki and Wayin.
RVZ
Q1. You co-Founded Sun Microsystems in 1982, and served as CEO and Chairman of the Board for 22 years. What are the main lessons learned in all these years?
Scott …
[Read more]
The MySQL Document Store is a NoSQL JSON document store built
upon well known MySQL database technology. PHP runs about
eight percent of the Internet. So putting the two together
is a big priority for me. So this blog post is about getting all
this together on a Ubuntu 18.04 system.
Note that I will be teaching PHP and the X DevAPI at Oracle Code
One and hopefully in some tutorials/workshops this year.
These session will feature the X DevAPI installed on Virtual Box
images and I probably will not have time to cover these steps in
detail but I will point to this as reference material.
PHP 7.2 PHP's performance has really skyrocketed with the
seven series and the newer betas are looking very
impressive. But to use the new X Devapi you will need to
get the shared object for it into your PHP server.
The MySQL X DevAPI PECL Extension
…
This year the Zero to DBA Hero track at the Southeas
Llinuxfest expands to a second day. The event is
free to attend but it helps if you pre register. Here is
the agenda of that you will see in Charlotte June 8th, 9th, and
10th.
MySQL Talks at SELF – Zero to
DBA Hero Track Linode Ballroom
Friday
9am 20 years of MySQL, 20 years of
PHP, and 10 Years of SELF -- What the heck has been going on?
Dave Stokes
10:15 Introducing the MySQL Document Store
Charles Bell, PhD
11:30 Performance Analysis and Troubleshooting Methodologies
for Databases Peter Zaitsev
1:30 MySQL Without the SQL -- Oh My! Dave Stokes
4:00 Introducing MySQL InnoDB Cluster Charles Bell,
PhD
Saturday
9am …
When maintainng any piece of software, we usually deal with two kind of actions:
- bug fixing,
- new features.
bugs and features
A bug happens when there is an error in the software, which does not behave according to the documentation or the specifications. In short, it's a breech of contract between the software maintainer and the users. The promise, i.e. the software API that was published at every major version, is broken, and the software must be reconciled with the expectations and fixed, so that it behaves again as the documentation says. When we fix a bug in this way, we increment the revision number of the software version …
[Read more]
Pretend you have a JSON array of data that looks roughly like the
following.
mysql> insert into x(y) values('["a","b","c","d"]');
Query OK, 1 row affected (0.10 sec)
You could get all the values from that array using
$[*]
mysql> select y->"$[*]" from x;
+----------------------+
| y->"$[*]" |
+----------------------+
| ["a", "b", "c", "d"] |
+----------------------+
1 row in set (0.00 sec)
Or the individual members of the array with an index that starts
with zero.
mysql> select y->"$[0]" from x;
+-----------+
| y->"$[0]" |
+-----------+
| "a" |
+-----------+
1 row in set (0.00 sec)
But what about the times you want the last item in the array and
really do not want to loop through all the items? How about using …
MySQL 8.0 GA is right around the corner. I
don't have precise information about its release, as I don't work
at Oracle. If I did, I would probably know, but I couldn't tell
when the release is scheduled to appear because of company
policies. I can, however, speculate and infer, based of my
experience with previous releases. My personal assessment is that
the release will appear before 9:00am PT on April 24, 2018. The "before"
can be anything from a few minutes to one week in advance.
Then, again, it may not happen at all if someone finds an
atrocious bug that needs to be fixed asap.
Either way, users are keen on testing the new release in its current state of release candidate. Here I show a few methods that allow you to have a taste of the new …
[Read more]dbdeployer went into release candidate status a few weeks ago. Since then, I added no new features, but a lot of tests. The test suite now runs 3,000+ tests on MacOS and a bit more on Linux, for a grand total of 6,000+ tests that need to run at least twice: once with concurrency enabled and once without. I know that testing can't prove the absence of bugs, but I am satisfied with the results, since all this grinding has allowed me to find several bugs and fix them.
In this framework, I felt that dbdeployer could exit candidate status and get to version 1.0. This happened on March 26th. An immediate side effect of this change is that from this point on, dbdeployer must adhere to the semantic versioning principles:
A version number is made of Major, Minor, and Revision. When changes are applied, the following happens:
- …
The latest release of dbdeployer is possibly the last one with a leading 0. If no serious bugs are found in the next two weeks, the next release will bear a glorious 1.0.
Latest news
The decision to get out of the stream of pre-releases that were published until now comes because I have implemented all the features that I wanted to add: mainly, all the ones that I wished to add to MySQL-Sandbox but it would have been …
[Read more]
Version 0.3.0 of dbdeployer has gained the ability of deploying
multiple sandboxes concurrently. Whenever we deploy a group of
sandboxes (replication, multiple) we can use
the --concurrent flag, telling dbdeployer that it
should run operations concurrently.
What happens when a single sandbox gets deployed? There are six sets of operations:
- Create the sandbox directory and write down its scripts;
- Run the initialisation script;
- Start the database server;
- Run the pre-grants SQL commands (if any;)
- Load the grants; …