The Challenge Often with sensitive information, you need to have an audit log. Not just that a table had a select run, but that specific cells within the table were accessed. Frequently data such as this will contain a classification level as part of the row, defining policies for how it is handled, audited, etc.… Facebook Twitter LinkedIn
I recently watched a fantastic Python Pandas library tutorial series on YouTube. Without a doubt, Pandas is great for all sorts of data stuff. On the same token, MySQL Shell in Python mode is quite powerful in the sense that Python and the MySQL Shell (version >= 8.0) are somewhat united in the same environment. Although Pandas is in a league all its own when it comes to data analysis, between the power of MySQL and Python, we can also perform some basic analysis easily in MySQL Shell Python mode. In this blog post, I will cover some basic data analysis using Python mode in the MySQL Shell. Continue reading to see examples…
Business vector created by freepik – www.freepik.com
OS, Software, and DB used:
- OpenSuse Leap …
The MySQL DROP statement is one of many powerful DDL
commands. Be it ALTER TABLE some_table DROP
some_column or DROP some_table, this type of
command can drastically change your data landscape
because in executing MySQL DROP, you are completely
removing objects from the database! If you are using the phpMyAdmin web
interface, you can execute the MySQL DROP
statement with just a few mouse clicks. Continue reading to see
how…
Drops of water.
Self-Promotion:
If you enjoy the content written here, by all means, share this blog and your favorite post(s) with others who may benefit from or like it as well. Since coffee is my favorite drink, you can even buy me one if you would like!
Note: The …
[Read more]This is the announcement blogpost and this is my overview taken from medium:
The one where MySQL 8.0 lands on Google Cloud SQL
Ada Doglace and Lily Grace (lilygrams). Photo by Anthony Ferrara.
There are many things that makes me happy. Puppies (see picture), food, wine and databases… (not particularly in that order). And things that makes me even happier such as a well designed schema and proper usage of ORM (Object Relational Mapping).
MySQL was the database I used to love to hate. It grew on me and the fact that long strides were made to make it more consistent and more modern kept me away from …
[Read more]Introduction In this article, we are going to see how we can implement an audit logging mechanism using MySQL database triggers to store the old and new row states in JSON column types. Database tables Let’s assume we have a library application that has the following two tables: The book table stores all the books that are found in our library, and the book_audit_log table stores the CDC (Change Data Capture) events that happened to a given book record via an INSERT, UPDATE, or DELETE DML statement. The book_audit_log table is created... Read More
The post MySQL audit logging using triggers appeared first on Vlad Mihalcea.
We all know as SQL professionals that the NULL
marker is a special case. Oftentimes, you have
NULL‘s stored in your tables, and that’s fine.
Suppose you want to present an alternative value in
query results where some of the columns have NULL?
This is a perfect opportunity (but not the only) to use the
IFNULL() function. I find IFNULL()
quite useful when exporting query results to a CSV file or other
type of flat file, providing something more meaningful
than the NULL word itself. However, you only have
one substitute for the NULL value when
using IFNULL(), so keep that in mind. Continue
reading and see examples using IFNULL() in
SELECT queries…
Photo by …
[Read more]
There may come a time you need to rename one or more columns in
an existing MySQL table for a variety of reasons. Using
ALTER TABLE, to rename a column is an easy enough
command. But, suppose there are multiple tables in the same
database/schema that have the same-named column and all of those
columns need to be renamed. That could be a lot of ALTER
TABLE statements to type out. Save your energy and time,
avoiding all of those ALTER TABLE commands
all-together. If you are lucky enough to be working with a MySQL
version > 8.0 then the Shell is your salvation. With just a
few lines of Python code in \py mode, all of your
trouble(s) and headache(s) are no more…
Photo by Ibrahim Rifath on …
[Read more]
Date and time values are some of the most important datatypes in
an RDBMS. From tracking order dates to payroll hours,
DATE and DATETIME datatypes are used in
all types of applications. At times as a Developer, you may need
only certain portions of a DATE or
DATETIME value. In MySQL, the EXTRACT()
function can provide you with a specific component of a
DATE or DATETIME value depending on
which INTERVAL is given as a parameter. Continue
reading to see example EXTRACT() queries for
understanding…
Photo by Omar Al-Ghossen on Unsplash …
[Read more]
Have you ever had to type out a massive CREATE TABLE
statement by hand? One with dozens of columns? Maybe several
dozens of columns? There are likely some GUI tools to help with
large CREATE TABLE commands. Or, other
drag-n-drop types of software that I am not familiar
with. What if you could write a few lines of Python code and take
care of a huge CREATE TABLE statement with way less
effort than typed manually? Interested? Continue reading
and see how using pandas, pyodbc, and MySQL…
Photo by Vorsen Furniture on Unsplash
OS, Software, and DB used:
- OpenSuse Leap 15.1 …
Oracle MySQL is in need of a columnar storage engine for analytics workloads. A columnar engine (or column store) stores data vertically, that is, it stores all the data associated with a column together, instead of the traditional RDBMS storage method of storing entire rows together, either in a index organized manner, like InnoDB, or in a heap, like MyISAM.
Columnar storage has the benefit of reducing IO when only a subset of the row is accessed in a query, because only the data for the accessed rows must be read from disk (or cache) instead of having to read entire rows. Most columnar stores do not support indexes, but WARP does.
WARP is open source
You can find the WARP source code release on GitHub. Binaries can be provided upon request. Simply open an issue for your desired Linux distribution, and I will make them available as soon as I can.
…
[Read more]