Home
Slides and Workbooks From Oracle OpenWorld & CodeOne
First of all, thanks to everyone who attended my sessions at the recent Oracle OpenWorld and Code One in San Francisco. It was a great privilege to be allowed to make a number of presentations. All of the workbooks and scripts from the hands-on labs (HOL) and the slides from the talks have been made available at OpenWorld's and Code One's session catalogues. You can download the files by using the OpenWorld catalog searching for my name or the session number (see below). Click on the download icon for each of the presentations you are interested in. For the hands-on labs the downloadable file includes the workbook as well as the scripts related to the exercises. The workbook contains the
MySQL Shell 8.0.13 Prompt: Now with New Line Support
Table Of ContentsWhy Use a New Line in the Prompt?New Prompt Templates with Line BreaksMy Favourite PromptI have already blogged a couple of times about the MySQL Shell prompt. In the first blog, I wrote about how in general to configure it, and in the second blog, I showed how to install the necessary fonts to use the prompt with the Awesome and Powerline fonts. In this blog, I will show a new feature of MySQL Shell 8.0.13 which adds support to have a line break in the prompt and still get multi line statements align correctly. I will first discuss why you may want to use the new feature, then go through the new templates using this feature, and
MySQL Server 8.0.13: Thanks for the 10 Facebook and Community Contributions
Table Of ContentsWhy Use a New Line in the Prompt?New Prompt Templates with Line BreaksMy Favourite PromptMySQL 8.0.13 was released this week. There are several exciting changes including functional indexes and using general expressions as the default value for your columns. So, I will recommend you to get MySQL 8.0.13 installed and try out the new features. You can read about changed in the release notes section of the MySQL documentation and in Geir's release blog. However, what I would like to focus on in this blog is the external contributions that has been included in this release. There are five patches contributed by Facebook as well as five contributions from other MySQL users. The patches contributed by Facebook are:
MySQL 8: Performance Schema Digests Improvements
Table Of ContentsWhy Use a New Line in the Prompt?New Prompt Templates with Line BreaksMy Favourite PromptQuery SamplePercentile InformationHistogramsSince MySQL 5.6, the digest feature of the MySQL Performance Schema has provided a convenient and effective way to obtain statistics of queries based on their normalized form. The feature works so well that it has almost completely (from my experience) replaced the connector extensions and proxy for collecting query statistics for the Query Analyzer (Quan) in MySQL Enterprise Monitor (MEM). MySQL 8 adds further improvements to the digest feature in the Performance Schema including a sample query with statistics for each digest, percentile information, and a histogram summary. This blog will explore these new features. Let's start out looking at the
Replication Monitoring with the Performance Schema
Table Of ContentsWhy Use a New Line in the Prompt?New Prompt Templates with Line BreaksMy Favourite PromptQuery SamplePercentile InformationHistogramsThe SetupSHOW SLAVE STATUSPerformance Schema Replication TablesOverview of TablesOld Versus NewExampleslog_statusreplication_applier_configurationreplication_applier_filtersreplication_applier_global_filtersreplication_applier_statusreplication_applier_status_by_coordinatorreplication_applier_status_by_workerreplication_connection_configurationreplication_connection_statusConclusionThe traditional way to monitor replication in MySQL is the SHOW SLAVE STATUS command. However as it will be shown, it has its limitations and in MySQL 5.7 and 8.0 the MySQL developers have started to implement the information as Performance Schema tables. This has several advantages including better monitoring of the replication delay in MySQL 8.0. This blog discusses why SHOW SLAVE STATUS should be replaced with the Performance Schema tables. The Setup The replication setup that will be used for the examples in this blog can be seen in the
Shutdown and Restart Statements
Table Of ContentsWhy Use a New Line in the Prompt?New Prompt Templates with Line BreaksMy Favourite PromptQuery SamplePercentile InformationHistogramsThe SetupSHOW SLAVE STATUSPerformance Schema Replication TablesOverview of TablesOld Versus NewExampleslog_statusreplication_applier_configurationreplication_applier_filtersreplication_applier_global_filtersreplication_applier_statusreplication_applier_status_by_coordinatorreplication_applier_status_by_workerreplication_connection_configurationreplication_connection_statusConclusionThere are various ways to shutdown MySQL. The traditional cross platform method is to use the shutdown command in the mysqladmin client. One drawback is that it requires shell access; another is that it cannot start MySQL again automatically. There are platform specific options that can perform a restart such as using systemctl on Linux or install MySQL as a service on Microsoft Windows. What I will look at here though is the built in support for stopping and restarting MySQL using SQL statements. MySQL 5.7 added the SHUTDOWN statement which allows
Meet MySQL Support at Oracle OpenWorld and Code One 2018
Table Of ContentsWhy Use a New Line in the Prompt?New Prompt Templates with Line BreaksMy Favourite PromptQuery SamplePercentile InformationHistogramsThe SetupSHOW SLAVE STATUSPerformance Schema Replication TablesOverview of TablesOld Versus NewExampleslog_statusreplication_applier_configurationreplication_applier_filtersreplication_applier_global_filtersreplication_applier_statusreplication_applier_status_by_coordinatorreplication_applier_status_by_workerreplication_connection_configurationreplication_connection_statusConclusionOracle MySQL Support will this year again take part in the Oracle OpenWorld conference in San Francisco. Additionally, we will present at the developer focused Code One that is held at the same time. Oracle OpenWorld and Code One 2018 takes place at the Moscone Center and nearby hotels in San Francisco on Monday 22 October to Thursday 25 October. MySQL Support will be represented by Lig Isler-turmelle and myself (Jesper Wisborg Krogh), and we will organize three hands-on labs (HOL) in Oracle OpenWorld, two talks in Code One, and two mini-briefings
NoSQL/X DevAPI Tutorial with MySQL Connector/Python 8.0
Table Of ContentsWhy Use a New Line in the Prompt?New Prompt Templates with Line BreaksMy Favourite PromptQuery SamplePercentile InformationHistogramsThe SetupSHOW SLAVE STATUSPerformance Schema Replication TablesOverview of TablesOld Versus NewExampleslog_statusreplication_applier_configurationreplication_applier_filtersreplication_applier_global_filtersreplication_applier_statusreplication_applier_status_by_coordinatorreplication_applier_status_by_workerreplication_connection_configurationreplication_connection_statusConclusionGetting ReadySetupCRUD – CreateAdding a Single DocumentAdding Multiple DocumentsCRUD – ReadTotal Number of DocumentsFinding Documents Based on Simple ComparisonQuerying with Condition on Element in ArrayCleanupWant to Learn More?The MySQL Document Store became general available (GA) with MySQL 8. One of the nice features of the MySQL Document Store is the X DevAPI that allows you to query the data from a multitude of programming languages using the same API (but while retaining the conventions of the language). The programming languages with support for the X DevAPI includes JavaScript (Node.js), PHP, Java, DotNet,
Awesome MySQL Shell Prompt
Table Of ContentsWhy Use a New Line in the Prompt?New Prompt Templates with Line BreaksMy Favourite PromptQuery SamplePercentile InformationHistogramsThe SetupSHOW SLAVE STATUSPerformance Schema Replication TablesOverview of TablesOld Versus NewExampleslog_statusreplication_applier_configurationreplication_applier_filtersreplication_applier_global_filtersreplication_applier_statusreplication_applier_status_by_coordinatorreplication_applier_status_by_workerreplication_connection_configurationreplication_connection_statusConclusionGetting ReadySetupCRUD – CreateAdding a Single DocumentAdding Multiple DocumentsCRUD – ReadTotal Number of DocumentsFinding Documents Based on Simple ComparisonQuerying with Condition on Element in ArrayCleanupWant to Learn More?Specifying the Prompt TemplateAwesome Terminal FontsPowerline FontFantasque Awesome PowerlineA month ago, I wrote a blog on how you can configure the MySQL Shell prompt to suit your needs. One thing I did not go into details with are the prompt templates prompt_256pl.json and prompt_256pl+aw.json. Common for both of these templates is that they require custom fonts to work. In the two file names, pl stands
MySQL Connector/Python on iOS Using Pythonista 3
Table Of ContentsWhy Use a New Line in the Prompt?New Prompt Templates with Line BreaksMy Favourite PromptQuery SamplePercentile InformationHistogramsThe SetupSHOW SLAVE STATUSPerformance Schema Replication TablesOverview of TablesOld Versus NewExampleslog_statusreplication_applier_configurationreplication_applier_filtersreplication_applier_global_filtersreplication_applier_statusreplication_applier_status_by_coordinatorreplication_applier_status_by_workerreplication_connection_configurationreplication_connection_statusConclusionGetting ReadySetupCRUD – CreateAdding a Single DocumentAdding Multiple DocumentsCRUD – ReadTotal Number of DocumentsFinding Documents Based on Simple ComparisonQuerying with Condition on Element in ArrayCleanupWant to Learn More?Specifying the Prompt TemplateAwesome Terminal FontsPowerline FontFantasque Awesome PowerlineInstall StaShInstalling PyPi Package Using StaSh pipExampleX DevAPIOne of the nice things about MySQL Connector/Python is that it is available in a pure Python implementation. This makes it very portable. Today I have been exploring the possibility to take advantage of that to make MySQL Connector/Python available on my iPad. There are few Python interpreters available for
