CodeIgniter 4 Query Builder class has an update() function used to process UPDATE Data Manipulation Language (DML) commands. Using update() as a standalone function call is perfectly valid. However, there is also a set() function used for setting column values as you would with the SET keyword in an SQL UPDATE statement. Used in conjunction with the Query Builder where() function, you can easily UPDATE column values for an individual row or multiple rows. Continue reading for more information…
[Read more]Hey all good folks! I’ve published another issue of your favorite newsletter, OpenLamp.tech, the newsletter for PHP/MySQL developers. This issue (like all the rest) is loaded with fantastic curated content. Enjoy and do share with others!
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!
I enjoy writing and curating the OpenLamp.tech newsletter. If you would like to support my efforts and you are finding value in the weekly publication, please share this post or an issue with someone you think would value the content as well.
The Newsletter for PHP and MySQL Developers
In this week’s issue, we have …
[Read more]This post is the third and last of a series of articles dedicated to MySQL Database Service (MDS):
- Using MySQL Database Service in OCI – Part 1: creating a MySQL DB System
- Using MySQL Database Service in OCI – Part 2: importing Data to MySQL DB System
- Using MySQL Database Service in OCI – Part 3: faster with MySQL HeatWave !
The goal of this series if to get familiar with MDS, HeatWave and useful MySQL Shell utilities.
We can now start a query on our MDS instance that has been populated with >200M rows:
SQL > SELECT year, Reporting_Airline, AVG(ArrDelay) AS avgArrDelay …[Read more]
With Aurora MySQL 8 now generally available to all, you may want to consider the plan for an upgrade path if you would like to take advantage of the new features for your application, for example, Common Table Expressions (CTE). This new major release has a much improved and streamlined upgrade progress from Aurora MySQL 5.7.
This tutorial will provide all the steps to allow you to try out setting up an Aurora cluster and performing an upgrade without the impact on your existing AWS environment. The two pre-requisites to getting started are:
- An AWS account. The Free 1 year AWS account provides many of the services used in these tutorials at no or little cost.
- The awscli. See …
This post is the second of a series of articles dedicated to MySQL Database Service (MDS):
- Using MySQL Database Service in OCI – Part 1: creating a MySQL DB System
- Using MySQL Database Service in OCI – Part 2: importing Data to MySQL DB System
- Using MySQL Database Service in OCI – Part 3: faster with MySQL HeatWave !
The goal of this series if to get familiar with MDS, HeatWave and useful MySQL Shell utilities.
Before we start, I would like to highlight that the fastest and recommended way to import data to a MySQL DB System in OCI is to use a parallel dump created using MySQL to Object Storage and load it …
[Read more]This post is the first of a series of articles dedicated to MySQL Database Service (MDS):
- Using MySQL Database Service in OCI – Part 1: creating a MySQL DB System
- Using MySQL Database Service in OCI – Part 2: importing Data to MySQL DB System
- Using MySQL Database Service in OCI – Part 3: faster with MySQL HeatWave !
The goal of this series if to get familiar with MDS, HeatWave and useful MySQL Shell utilities.
In this first article we will start by creating a MySQL DB System and a Compute instance in OCI. One of the goal is also to see the benefits of HeatWave, so we will start by creating this …
[Read more]Background # A critical vulnerability CVE-2021-44228 in the Apache Log4j logging library was disclosed on Dec 9. The project provided release 2.15.0 with a patch that mitigates the impact of this CVE. It was quickly found that the initial patch was insufficient, and an additional CVE CVE-2021-45046 followed. This has been fixed in release 2.16.0. Who is affected? # The bulk of vitess code is in golang, and is unaffected by these vulnerabilities.
Past - Frameworks without scale # Over the past couple of decades, there has been a steady rise in the complexity of the development stacks that the developers across the globe have been using. The web has advanced from being just HTML files, to also include CSS and JavaScript with their own multitudes of frameworks like Redwood, Next.js, and Angular, among many others. The number of library dependencies that each project has has also shot up, leading to package managers like npm gaining popularity.
I created the first draft of this post many years ago. At that time, I was working with physical servers having 192 GB of RAM or more. On such systems, doing memory pressure tests with MySQL is complicated. I used a trick to simulate a Linux server with less RAM (also works with vms, probably not with Kubernetes or containers). I recently needed the trick again and as I
To copy the data of the particular column of the table to another table/server, We have an option to export the data as CSV and import the data back to a different table. But when the table size is large and we need to copy the data only for the required data to the target table will cause the load in the server since the table scanning is huge.
To overcome this, we have the pt-archiver copy the data from the source table to the destination as a whole or only for required columns. And also we can do this in a controlled manner as well. So there will be no performance impact even on the production time.
Source table structure :
mysql> show create table source\G *************************** 1. row *************************** Table: source Create Table: CREATE TABLE `source` ( `id` int unsigned NOT NULL …[Read more]