Become a PostgreSQL DBA: Point-in-Time Database Restoration

The ability to perform backup and restore of your data is one of the fundamental requirements of any DBMS. In a previous post, we discussed Postgres backups in general. In this blog post, we’ll look at how to do point-in-time recovery for PostgreSQL.

Point-in-time recovery (PITR) is a pretty useful feature. You need to keep in mind that the backup is a “snapshot” of your dataset at a given point of time. If you take backups on a daily basis, in the worst case scenario, you will have almost 24 hours of data that is not in more than you had in your last backup. So restoring from the last backup means losing a day’s worth of data. In general, it’s not really ok to lose so much data. Therefore you need to think about how you can recover all the changes that happened since you took the last backup. Let’s see how the whole process of backing up data and restoring it after an incident may look like on PostgreSQL 10.1 (which you can deploy using ClusterControl).

Setting up WAL archiving

PostgreSQL stores all modifications in form of Write-Ahead Logs (WAL). These files can be used for replication, but they can also be used for PITR. First of all, we need to setup WAL archiving. We’ll start with creating a directory in which the WAL files will be stored. This can be in any location: on disk, on NFS mount, anywhere – as long as PostgreSQL can write to it, it’ll do.

mkdir /wal_archive
chown -R postgres.postgres /wal_archive

We’ll create a simple directory and make sure it’s owned by ‘postgres’ user. Once this is done, we can start editing the PostgreSQL configuration.

archive_mode = on                       # enables archiving; off, on, or always
                                # (change requires restart)
archive_command = 'test ! -f /wal_archive/%f && cp %p /wal_archive/%f'                          # command to use to archive a logfile segment

wal_level = archive     # minimal, replica, or logical

The settings above have to be configured – you want to enable archiving (archive_mode = on), you want also to set wal_lever to archive. Archive_command requires more explanation. PostgreSQL doesn’t care where you will put the files, as long as you’ll tell it how to do it. This command will be used to copy the files to their destination. It can be a simple one-liner, as in the example above, it can be a call to a complex script or binary. What’s important is that this command should not overwrite existing files. It also should return zero exit status only when it managed to copy the file. If the return code will be different than 0, PostgreSQL will attempt to copy that file again. In our case, we verify if the file already exists or not. If not, we will copy it to the destination. ‘%p’ represents full path to the WAL file to be copied while ‘%f’ represents the filename only.

Once we are done with those changes, we need to restart PostgreSQL:

service postgresql restart

At this point, you should see WAL files appearing in your target directory. Please keep in mind that the process is triggered after a WAL file rotation – if you have very low traffic, it may take a while before WAL archiving will be started.

Base backup

The next step will be to take a base backup that we’ll use as a base for our point-in-time restore. You can take it using pg_basebackup:

pg_basebackup -Umyuser -h127.0.0.1 --progress -D /basebackup/

Or you can use ClusterControl for that:

When dealing with it manually, you may need to edit your pg_hba.conf to allow replication connections for the user you’ll be using for pg_basebackup. ClusterControl will take care of it for you.

Restore

Once you have a base backup done and WAL archiving configured, you are good to go. First of all, you need to figure out the point at which you should restore your data. Ideally, you’ll be able to give an exact time. Other options are: a named restore point (pg_create_restore_point()), transaction ID or WAL location LSN. You can try to use the pg_waldump utility to parse WAL files and print them in human-readable format, but it’s actually far from being human-readable so it can still be tricky to pinpoint the exact location.

rmgr: Transaction len (rec/tot):     34/    34, tx:     801534, lsn: 3/726587F0, prev 3/726587A8, desc: COMMIT 2017-11-30 12:39:05.086674 UTC
rmgr: Standby     len (rec/tot):     42/    42, tx:     801535, lsn: 3/72658818, prev 3/726587F0, desc: LOCK xid 801535 db 12938 rel 16450
rmgr: Storage     len (rec/tot):     42/    42, tx:     801535, lsn: 3/72658848, prev 3/72658818, desc: CREATE base/12938/16456
rmgr: Heap        len (rec/tot):    123/   123, tx:     801535, lsn: 3/72658878, prev 3/72658848, desc: UPDATE off 7 xmax 801535 ; new off 9 xmax 0, blkref #0: rel 1663/12938/1259 blk 0

When you know at which point you need to restore to, you can proceed with the recovery. First, you should stop the PostgreSQL server:

service postgresql stop

Then you need to remove all of the data directory, restore the base backup and then remove any existing WAL files. PostgreSQL will copy the data from our WAL archive directory.

rm -rf /var/lib/postgresql/10/main/*
cp -r /basebackup/* /var/lib/postgresql/10/main/
rm -rf /var/lib/postgresql/10/main/pg_wal/*

Now, it’s time to prepare the recovery.conf file, which will define how the recovery process will look like.

vim /var/lib/postgresql/10/main/recovery.conf
restore_command = 'cp /wal_archive/%f "%p"'
recovery_target_lsn = '3/72658818'

In the example above, we defined a restore command (simple cp from our /wal_archive directory into PostgreSQL pg_wal directory). We also should decide where to stop – we decided to use a particular LSN as a stop point, but you can also use:

recovery_target_name
recovery_target_time
recovery_target_xid

for a named restore point, timestamp and transaction ID.

Finally, make sure that all of the files in the PostgreSQL data directory have the correct owner:

chown -R postgres.postgres /var/lib/postgresql/

Once this is done, we can start PostgreSQL:

service postgresql start

In the log you should see entries like this:

2017-12-01 10:45:56.362 UTC [8576] LOG:  restored log file "000000010000000300000034" from archive
2017-12-01 10:45:56.401 UTC [8576] LOG:  restored log file "00000001000000030000001D" from archive
2017-12-01 10:45:56.419 UTC [8576] LOG:  redo starts at 3/1D9D5408
2017-12-01 10:45:56.464 UTC [8576] LOG:  restored log file "00000001000000030000001E" from archive
2017-12-01 10:45:56.526 UTC [8576] LOG:  restored log file "00000001000000030000001F" from archive
2017-12-01 10:45:56.583 UTC [8576] LOG:  restored log file "000000010000000300000020" from archive
2017-12-01 10:45:56.639 UTC [8576] LOG:  restored log file "000000010000000300000021" from archive
2017-12-01 10:45:56.695 UTC [8576] LOG:  restored log file "000000010000000300000022" from archive
2017-12-01 10:45:56.753 UTC [8576] LOG:  restored log file "000000010000000300000023" from archive
2017-12-01 10:45:56.812 UTC [8576] LOG:  restored log file "000000010000000300000024" from archive
2017-12-01 10:45:56.870 UTC [8576] LOG:  restored log file "000000010000000300000025" from archive

Once done, the server will still be in recovery mode. You can switch it to normal operations by running:

postgres=# create database mydb;
ERROR:  cannot execute CREATE DATABASE in a read-only transaction
postgres=# SELECT pg_wal_replay_resume();
 pg_wal_replay_resume
----------------------

(1 row)

postgres=# create database mydb;
CREATE DATABASE

You can also define in recovery.conf how PostgreSQL should behave after the recovery using:

recovery_target_action

There are three options:

  • ‘pause’, the default, keeps the server in recovery mode. It is useful if you want to verify that everything is indeed in place before you allow normal traffic to hit the server and modify data.
  • ‘promote’ will end the recovery mode as soon as the recovery itself completes.
  • ‘shutdown’ will stop the PostgreSQL server after the recovery.

After recovery is complete, recovery.conf file will be renamed to recovery.done. Please keep in mind that this won’t happen with:

recovery_target_action = ‘shutdown’

In this case you need to remove or rename the file manually, otherwise the server will keep restarting over and over again.

As you can see, there is good support for performing point in time recovery in PostgreSQL. We hope you that you won’t have to go through this process on your production servers. It’s still good practice to test your organization’s skills in performing point-in-time recovery every now and then, so you are prepared in case of emergency.

ClusterControl 1.5 Documentation – What’s New

If you haven’t upgraded to ClusterControl 1.5, you should! It’s full of great new features and enhancements. We have lots of documentation to guide you and help you get started. Documentation on older versions is still available in our Github repository.

Apart from the standard routine updates in the user and admin guides to reflect the latest features , we also made some enhancements in other areas.

Improved Readability

We received some feedback on the readability of the documentation page. We have now improved the look and feel by switching to a better CSS template. Syntax highlighting and source code tag are now following the same style we use in our blogs. We have also fixed a number of 404 errors and broken links across the documentation site.

ClusterControl Components

ClusterControl 1.5 introduced two new packages to handle cloud integration and management features. These packages are specifically for handling offsite backup to cloud storage, and will be a base to be extended when adding new functionality in upcoming releases. The ClusterControl modular setup now consists of a number of components:

  • ClusterControl Controller (cmon)
  • ClusterControl REST API
  • ClusterControl UI
  • ClusterControl SSH
  • ClusterControl Notifications
  • ClusterControl Cloud
  • ClusterControl Cloud File Manager
  • ClusterControl CLI

Each of the components is described in detail with examples. We also deprecated an older component called ClusterControl NodeJS which was available since v1.3, replaced by an improved version called ClusterControl Notifications.

Learn about them here.

Graceful Shutdown

We also got some requests to provide recommended ways to perform a clean shutdown of the database cluster, which can be useful during testing or maintenance. Depending on the clustering technology, the order of startup and shut down is vital to keep the whole cluster in sync and ensure the system will start up without any issues in the future.

It is recommended that the ClusterControl node be the last one to shut down, since it needs to oversee the state of the monitored hosts and save it into CMON database. When starting up the database cluster at the later stage, ClusterControl will perform a proper start-up procedure based on the last known state of the monitored hosts.

Check the recommended graceful shutdown steps here.

ClusterControl
Single Console for Your Entire Database Infrastructure
Find out what else is new in ClusterControl

Troubleshooting Guide

We have listed out common issues, with troubleshooting steps to help you fix some common issues you might bump into. We are in the midst of migrating popular technical support cases from our Support forum, so you can find all the information in one place.

Check out the Troubleshooting Guide here.

We welcome any feedback, suggestions or comments in regards to our documentation to make sure you find everything you need. Happy clustering!

Severalnines & MariaDB Present: How to Manage MariaDB 10.2 With ClusterControl 1.5 – The Replay

As you might have seen in our recent announcement, ClusterControl now supports the latest versions of MariaDB, MySQL NDB Cluster and PostgreSQL; and introduces a series of new database backup functionalities that range from AWS & Google Cloud integration backup services to automatic backup verifications, making it ever more efficient to run a solid backup strategy for open source database infrastructures.

And with the release of ClusterControl 1.5, we also broadcast a live demo webinar in partnership with MariaDB, which is now available to watch as a replay!

Johan Andersson, CTO at Severalnines, and Ralf Gebhardt, Product Manager at MariaDB, unveil ClusterControl 1.5 in this webinar, the all-inclusive database management system that lets you easily deploy, monitor, manage and scale highly available open source databases – and load balancers – in any environment: on-premise or in the cloud.

There is a particular focus on MariaDB 10.2, thanks to Ralf’s participation, who talks us through the latest features in MariaDB, and give us a sneak preview of what to expect in MariaDB 10.3.

Johan then also covers our new operational reports and email notification features – all in a live demo which you can now watch as replay.

Watch the replay

Agenda

MariaDB 10.2: all the new features and a first look at MariaDB 10.3

  • ClusterControl 1.5
    • What’s new:
      • MariaDB 10.2 support
      • AWS & Google Cloud services integration
      • Enhanced backup functions
    • New features & support for:
      • PostgreSQL
      • MySQL NDB Cluster
      • ProxySQL
    • Operational reports
  • Live demo
  • Q&A

Speakers

Johan Andersson, CTO, Severalnines – Johan’s technical background and interest are in high performance computing as demonstrated by the work he did on main-memory clustered databases at Ericsson as well as his research on parallel Java Virtual Machines at Trinity College Dublin in Ireland. Prior to co-founding Severalnines, Johan was Principal Consultant and lead of the MySQL Clustering & High Availability consulting group at MySQL / Sun Microsystems / Oracle, where he designed and implemented large-scale MySQL systems for key customers. Johan is a regular speaker at MySQL User Conferences as well as other high profile community gatherings with popular talks and tutorials around architecting and tuning MySQL Clusters.

Ralf Gebhardt is Product Manager at MariaDB Corporation. He is responsible for MariaDB Server and MariaDB Connectors. He joined MariaDB/SkySQL in 2011 as Principal Sales Engineer.
After 10 years professional experience in Software Development, Support, Training and Consulting, He started working at MySQL GmbH as Sales Engineer in 2002. In the course of the acquisition of Sun Microsystems he joined Oracle, still responsible for MySQL.
He holds a masters degree in Computer Engineering from the University of Cooperative Education (in cooperation with IBM Deutschland).

Deploying MySQL, MariaDB, Percona Server, MongoDB or PostgreSQL – Made Easy with ClusterControl

Helping users securely automate and manage their open source databases has been at the core of our efforts from the inception of Severalnines.

And ever since the first release of our flagship product, ClusterControl, it’s always been about making it as easy and secure as possible for users to deploy complex, open source database cluster technologies in any environment.

Since our first steps with deployment, automation and management we’ve perfected the art of securely deploying highly available open source database infrastructures by developing ClusterControl from a deployment and monitoring tool to a full-blown automation and management system adopted by thousands of users worldwide.

As a result, ClusterControl can be used today to deploy, monitor, and manage over a dozen versions of the most popular open source database technologies – on premise or in the cloud.

Whether you’re looking to deploy MySQL standalone, MySQL replication, MySQL Cluster, Galera Cluster, MariaDB, MariaDB Cluster, Percona XtraDB and Percona Server for MongoDB, MongoDB itself and PostgreSQL – ClusterControl has you covered.

In addition to the database stores, users can also deploy and manage load balancing technologies such as HAProxy, ProxySQL, MaxScale and Keepalived.

“Very easy to deploy a cluster, also it facilitates administration and monitoring.”

Michel Berger IT Applications Manager European Broadcasting Union (EBU)

Using ClusterControl, database clusters can be either deployed new or existing ones imported.

A deployment wizard makes it easy and secure to deploy production-ready database clusters with a point and click interface that walks the users through the deployment process step by step.

Select Deploy or Import Cluster

ClusterControl
Single Console for Your Entire Database Infrastructure
Find out what else is new in ClusterControl

Walk through of the Deploy Wizard

View your cluster list

“ClusterControl is great for deploying and managing a high availability infrastructure. Also find the interface very easy to manage.”

Paul Masterson, Infrastructure Architect, Dunnes

Deploying with the ClusterControl CLI

Users can also chose to work with our CLI, which allows for easy integration with infrastructure orchestration tools such as Ansible etc.

s9s cluster     
  --create     
  --cluster-type=galera     
  --nodes='10.10.10.26;10.10.10.27;10.10.10.28'     
  --vendor=percona         
  --cluster-name=PXC_CENTOS7
  --provider-version=5.7  
  --os-user=vagrant   --wait

The ClusterControl deployment supports multiple NICS and templated configurations.

In short, ClusterControl provides:

  • Topology-aware deployment jobs for MySQL, MariaDB,Percona, MongoDB and PostgreSQL
  • Self-service and on-demand
  • From standalone nodes to load-balanced clusters
  • Your choice of barebone servers, private/public cloud and containers

To see for yourself, download ClusterControl today and give us your feedback.

What Can Cause a Website to Crash?

For a website owner or webmaster being greeted with a blank screen instead of their well designed website, when they type in their domain, can be a panic inducing experience. A little website downtime isn’t just annoying and inconvenient. It can cost a business dearly, especially if you have a busy ecommerce site. When you visit a website, you are basically requesting information from the server which gets delivered over the net to a browser. It could be a simple HTML page or dynamic information from a database or files, such as images.

Website outages can happen for a number of reasons including hacker attacks, traffic spikes, DDOs attacks, low bandwidth, coding errors or even natural disasters that affect your data centers and more. Here are some of the most causes for your website to be inaccessible.

Webmaster Errors

Coding errors, broken web code, or even running too many scripts can cause issues with your website. If you have made an update to the website and your site went down shortly after, this may be the likely cause. You should check your page loading speed, the efficiency of the code on your site by checking whether queries are optimized and database tables are properly indexed.  Check CMSs, blogs, and forums for coding issues.

If you have forgotten to renew your site’s domain name or hosting contract then your site may appear down. Even if you have made any recent DNS changes or newly registered your domain then it can take up to 24 hours for DNS Propagation and for those changes to show up,

Distributed Denial of Service (DDOS attacks)

Successful DDoS attacks are often used to deliberately target specific websites by overwhelming them with junk traffic from many sources and create painful outages. When a site gets swamped with fictitious traffic, it is impossible to tell apart genuine requests for information from the fake ones. The use of a Content Delivery Network to absorb the traffic by distributing content over multiple servers and also to track and block requests coming from certain fishy IP addresses can prove useful in case of such attacks. But more advanced automation tools are now being used to organize sophisticated application DDoS techniques that randomize IP addresses using botnets and mask transaction characteristics to send unique customized requests. This helps cyber criminals from creating the patterns that DDoS solutions monitor to tell apart an attack transaction from a legitimate one.

Server/Hosting Provider Error

Website crashes can happen when your host provider experiences server troubles. Datacenters holding multiple servers in a controlled environment can run into unforeseen problems, like severe weather, power failures or hardware malfunctions. If your site is hosted on such a datacenter’s servers then your site may be down temporarily. There is not much you can do besides wait for it to be fixed, when this happens. Websites often require hardware upgrades or software updates and have to be taken offline. This sort of regular server maintenance is generally scheduled for low-traffic times.

Massive Traffic Spike

Traffic to your website is great news but a sudden tidal wave of web traffic can overload a server and knock your site offline. You need to consider that your website’s hosting environment may not be geared to handle unplanned traffic spikes. Most sites will not see spikes unless a post that goes viral (Digg effect) or you make it to TV, run special promotions or have an email campaign going out. Website administrators generally have a fair idea of their normal and peak traffic levels and can run load tests on their servers to see whether their servers can handle the extra requests or users and then plan for growth.

Protect Your Website From Downtime

You can choose the hosting plan best suited for your needs based on the size of your website and how much traffic you get.  Remember that resources are limited on shared servers. So if you are on a small, shared host plan and your site is growing fast, then you might experience website crashes. High volume sites with heavy processing needs or high volume email can benefit from using managed hosting with DNS management & automatic backups to multiple datacenters. To deal with large unpredictable spikes, VPS or a cloud based solution can also be set up to automatically scale RAM/resources in real-time when needed.

Plesk WordPress Toolkit Course – Part 2: Managing Plugins and Themes [Video]

Glad you’re here to join us as we celebrate the launch of our Plesk WordPress Toolkit Course. Welcome to part 2 of our video series. Today we’ll be talking about how you can manage all your plugins and themes using the all-in-one Plesk WordPress Toolkit. We hope we get to answer your WordPress questions as we go along.

Remember that as all Plesk courses, this one’s free and available to all users in our University catalogue. If you’re ready to get started, click below, have a look at the course. Or stick around for our 47-second video tutorial first.

Quick Glance at WordPress Toolkit Course

Thanks to our WordPress Toolkit Extension, you can deploy, secure and update your WordPress website – fast and easy. And our WordPress Toolkit course prepares you so you can do all that. Below is chapter two in a series of five. Our quick video tutorials will equip you with all you need to launch, maintain and grow your WordPress site and business.

However, once you create a WordPress website, it’s a good idea to install a plugin or two to help you manage content, set up an online store, or monitor your success. Have a look!

Installing Plugins and Themes

Video: 0:47 minutes

[embedded content]

What’s Going on in this Video

WordPress Toolkit is integrated with Addendio, a powerful plugin and theme search engine. You can apply a new theme or plugin to your WordPress website using the same simple process:

1. Click Plugins > Install Plugin or Themes > Install Theme
2. Search.
3. Sort, filter, and refine results.
4. Install your desired plugin/theme.

Not shown in video

Addendio also allows you to try a plugin or a theme without installing them on your website. And know that Addendio integration can also be disabled on the WordPress Toolkit settings screen by going to WordPress > Global Settings.

So what do you think, easy enough? Try it for yourself. Start exploring our Toolkit today or discover more in our WordPress Toolkit Course below.

How to Set up Your WordPress Website Security

Since WordPress is today’s forerunner for CMS and blogging platforms, hackers often target WordPress website security. Although getting a WP website up and running is fairly easy, you should take all necessary security precautions too. Otherwise, all your website’s information – be it your company’s or your visitors’ – will be at risk. So today, let’s talk about the best security practices.

1. Enhance WordPress website security with regular updates

The most important thing you need to do is regularly update all your files and WordPress plugins. New security patches for WP and all the different plugins come out quite regularly. And having the latest version makes it much more difficult for cybercriminals to gain access to your site.

It doesn’t matter if these vulnerabilities are small and seemingly insignificant. Perform a thorough security overview and make sure you install all the latest updates. Any WordPress vulnerability is a liability. So don’t take any chances and do whatever you can on your part.

2. Secure your Admin Panel

The WordPress admin panel is the area where you can make all the changes on your site and perform actions. It’s important that you restrict admin panel access to people who need it only. If you have no registration on your site, website visitors don’t need access to /wp-login/ or /wp-admin/.

The next action is to take your home IP, which you can see on many sites such as “whatismyip.com”. And add text lines to your /.htaccess/ file located in the WordPress admin. Then you can replace the current location with your home IP address:

1. 
2. order deny, allow
3. Deny from all
4. Allow from xx.xxx.xxx.xxx
5. 

To allow logins from multiple locations or computers, just add another “Allow from” statement in the following text line. Then insert additional addresses. Do you switch locations constantly and use Wi-Fi networks? Then you want to have access to your admin panel regardless of IP address. So you should only allow a small number of login attempts.

Like this, you’re safe against anyone trying to guess your password by trying out as many variations as possible. Here’s how you do it. First, find the “WP Limit login attempts” plugin. Then choose how many times someone is able to enter the wrong password. If they exceed this, they’re locked out. By doing this, you’ll make your WP website far less vulnerable to hackers.

3. Avoid using an Admin Username

It may seem like an obvious thing to do, but a lot of people never change the default WP username. Thus, giving hackers the opportunity to try and log in as the “admin”. All they need to do is use certain types of software to guess the password over and over again. This method is quite often successful, so avoid this rookie mistake and set a different username.

4. Strengthen your passwords

The same rule applies for passwords. Many use simple phrases and insert the first thing that pops into their mind. No matter how unique you think your password is, a lot of people use similar passwords. So consider yours for a little bit longer. Because a hacker can easily figure this out.

Think about it this way, owners don’t think much about their passwords. But hackers think about what people use the most and manage to get their way. Make sure you use a sentence that’s characteristic to you and you can remember easily. Use the first letters of each word. And then add numbers and symbols intermittently to increase its complexity.

5. Clean up malware and viruses

If your computer isn’t safe, then using it to log into your WordPress website will make it vulnerable too. So if you have malware or a virus on your computer, a hacker can quickly acquire your login details when you access your site. And they will easily be able to access it too. As a result of bypassing all of the security measures you set up.

Maybe you think that the biggest threats are online, and from direct attacks. But a lot of hackers create smart malware that sits on your computer for ages. They steal important info, such as login details. And this is why you need to make sure you install a good anti-virus software. Hence, update it often and scan your computer regularly to ensure that your system is clean.

6. Perform a security check with Plesk’s WordPress Toolkit

Plesk’s WordPress Toolkit is a management dashboard through which you can easily manage, configure and install your WordPress with Plesk. You can have this if you install Plesk panel on your system. Here’s how you can use the Toolkit to perform a WordPress website security check.

WordPress content folder

There are many unsecured PHP files in the /WP-content/ folder that can damage a WordPress site, if someone misuses them. After installing WordPress, you can execute PHP files directly from this directory. This security check will verify if the PHP file execution is forbidden or not.

Bear in mind that any custom directives in /web.config/ or /.htaccess/ files can override the set security measure. Additionally, be aware that some WordPress plugins can stop working when you secure the /WP-content/ folder.

Configuration file

There’s a lot of sensitive information, including database access credentials, within the WP-configt.php file. So after installing WordPress, execute the WP-config.php file. Because if web server PHP file processing is off, any solid hacker can enter your WP-config.php file contents.

And by using the security check, you’ll be able to block any unwanted access to this file. Moreover, you should know that both /web.config/ or /.htaccess/ can override this security measure too.

Directory browsing permissions

If directory browsing is on, it can give hackers the opportunity to acquire important website information. Including how it’s built, which plugins it has, and so on. In Plesk, directory browsing is off by default. And by running a security check, you’ll also confirm if the directory browsing is off.

Database prefix

Each WordPress installation uses identical nomenclature for database tables. If you only use the standard /WP_/ prefix for your database table names, the database structure won’t be secret. Meaning everyone will be able to acquire information from it.

Therefore, the security check will change all the database table prefixes from the default /WP_/. Then, it will deactivate plugins and turn on maintenance mode. After it will change prefixes within the configuration file and the database. And it will re-activate plugins and refresh the permalink structure before it finally switches off maintenance mode.

Permissions for files and directories

If your permissions aren’t compliant with security policies, then all the files that fail to comply will be vulnerable. After the installation is finished, your directories and files may have different permissions. By using a WordPress website security check, you can confirm if the permissions are properly set. It should be 755 directories, 600 for WP-config.php and 644 for all the other files.

Version information

All WordPress versions have different security vulnerabilities. This is why you should avoid displaying which version you’re using, as hackers might know its weaknesses. Hackers can find your WordPress version in the /redme.html/ files and the metadata of a page.

By performing a WordPress website security check, you can see if all /readme.html/ files are empty. Plus, you can see that all your themes have a /functions.php/ file that has the text line: Remove_action (/wp_head/ , /wp_generator/)

If you want, you can change security settings and see your security status. First, go to the S column that’s located in Websites & Domains > WordPress. And perform the next steps:

  1. Click on “check security” to see all your WordPress installations security.
  2. If you want to secure a single installation find the S column and click the icon next to a particular installation.
  3. If you want to check multiple installations, check their boxes on the side and click on the check security button.
  4. In the end, select the checkboxes with the security improvement you want to perform. And then click the secure button.

These are the necessary steps you need to adopt in order to ensure WordPress website security of the highest level. Bear in mind that these measures will still not make your site 100% secure. As there’s no such thing online. However, you’ll drastically reduce the chances of someone breaking into your site in order to steal your data and misuse it online.

Symantec Positioned in the Leaders Quadrant of the Inaugural Magic Quadrant for Cloud Access Security Brokers


Evaluation Based on Completeness of Vision and Ability to Execute

MOUNTAIN VIEW, Calif.–(BUSINESS WIRE)–

Symantec Corp. (NASDAQ: SYMC), the world’s leading cyber security

company, today announced it has been positioned by Gartner, Inc. in the

Leaders quadrant of the inaugural “Magic Quadrant for Cloud Access

Security Brokersi” for its Symantec CloudSOC platform.


The Gartner Magic Quadrant is the culmination of research in a specific

market and offers a graphical portrayal of vendor performance, including

categories for Leaders, Challengers, Visionaries, and Niche Players.

Criteria by which the vendors are measured include a company’s

completeness of vision and ability to execute. This report focused on

Cloud Access Security Brokers (CASBs) evaluated 11 different vendors and

placed Symantec in the Leaders quadrant.


Geared toward solving the unique security challenges of the “Cloud

Generation
ii,” Symantec provides organizations

visibility, data security and threat protection for cloud-based

services. Symantec is dedicated to providing users a comprehensive,

platform-centric approach by integrating critical enterprise security

infrastructure, such as Data Loss Prevention (DLP), Secure Web Gateway

(SWG), and Advanced Malware Protection across its entire product

portfolio, including CASB solutions.


“As companies increasingly move business-critical information to the

cloud, it’s crucial that we deliver a holistic and integrated security

solution to protect that information and help organizations meet data

compliance requirements,” said Mike Fey, president and CCO Symantec.

“Our CASB solution brings together our expertise in data loss prevention

and network security to give CISOs the control and protection their

organizations need.”


Symantec’s CloudSOC platform approach to CASB leverages advanced data

science and machine learning to deliver effective and scalable

protection of cloud activity. Key features include discovery of Shadow

IT, data governance and granular controls, encryption and tokenization,

user behavior analytics, malware protection, and post-incident analysis.

More information can be found hereiii.


iGartner, “Magic Quadrant for Cloud Access Security

Brokers,” Steve Riley, Craig Lawson, 30 November 2017.
iihttps://www.symantec.com/solutions/cloud-generation
iiihttps://www.symantec.com/products/cloud-application-security-cloudsoc


Gartner Disclaimer


Gartner does not endorse any vendor, product or service depicted in its

research publications, and does not advise technology users to select

only those vendors with the highest ratings or other designation.

Gartner research publications consist of the opinions of Gartner’s

research organization and should not be construed as statements of fact.

Gartner disclaims all warranties, expressed or implied, with respect to

this research, including any warranties of merchantability or fitness

for a particular purpose.


About Symantec


Symantec Corporation (NASDAQ: SYMC), the world’s leading cyber security

company, helps organizations, governments and people secure their most

important data wherever it lives. Organizations across the world look to

Symantec for strategic, integrated solutions to defend against

sophisticated attacks across endpoints, cloud and infrastructure.

Likewise, a global community of more than 50 million people and families

rely on Symantec’s Norton suite of products for protection at home and

across all of their devices. Symantec operates one of the world’s

largest civilian cyber intelligence networks, allowing it to see and

protect against the most advanced threats. For additional information,

please visit www.symantec.com or

connect with us on FacebookTwitter,

and LinkedIn.

View source version on businesswire.com: http://www.businesswire.com/news/home/20171204005223/en/

Source: Symantec Corporation

Upgrading to the ClusterControl Enterprise Edition

The ClusterControl Enterprise Edition provides you will a full suite of management and scaling features in addition to the deployment and monitoring functions offered as part of the free Community Edition. You also have the ability to deploy, configure and manage the top open source load balancing and caching technologies to drive peak performance for your mission-critical applications.

Whether you have been benefiting from the free resources included in the Community Edition or have evaluated the product through the Enterprise Trial, we’ll walk you through how our licensing works and explain how to get you up-and-running with all the automation and scaling that ClusterControl Enterprise has to offer.

“With quick installation, ease of use, great support, stable deployments and a scalable architecture, ClusterControl is just the solution we were looking for to provide a strong MySQL HA platform to our customers.”

Xavi Morrus, CMO, MediaCloud

How to Upgrade from Community to Enterprise

While using the ClusterControl Community Edition you may have clicked on a feature and got a pop-up indicating that it was not included in the version you are using. When this happens you have two options. You can activate (or extend) your Enterprise Trial OR you can contact sales to purchase an enterprise license.

“Our back-end is reliant on different databases to tackle different tasks. Using several different tools, rather than a one-stop shop, was detrimental to our productivity. Severalnines is that ‘shop’ and we haven’t looked back. ClusterControl is an awesome solution like no other.”

Zeger Knops, Head of Business Technology, vidaXL

Enterprise Trial

The ClusterControl Enterprise trial provides you with free access to our full suite of features for 30 days. The purpose of this trial is to allow you to “kick the tires” using your environments and applications to make sure that ClusterControl meets your needs.

With the trial you have access to all our Community features plus: Custom Dashboards, Load Balancers, Configuration Management, Backup and Restore, Automatic Node and Cluster Recovery, Role Based Access Control, Key Management, LDAP, SSL Encryption Scaling, and more!

The trial also grants you Enterprise Level access to our support teams 24/7. We want to make sure that you have the best experience during your trial and also introduce you to our amazing support that you can count on when you become a customer of Severalnines.

At the end of your trial, you will have the option to meet with our sales team to continue with ClusterControl Enterprise on a paid license. Or you may also continue with our ClusterControl Community Edition, which you can use for free – forever.

Extending Your Trial

Sometimes thirty days isn’t enough time to evaluate a product as extensive as ClusterControl. In these situations we can sometimes grant an extension to allow you some more time to evaluate the product. This extension can be requested from the product itself and you will be contacted by an account manager to arrange for the extension.

“ClusterControl is phenomenal software…I’m usually not impressed with vendors or the software we buy, because usually it’s over promised and under delivered. ClusterControl is a nice handy system that makes
me feel confident that we can run this in a production environment.”

Jordan Marshall, Manager of Database Administration, Black Hills Corporation

Purchasing a Commercial License

ClusterControl offers three separate plans and different support options. Our account managers are available to assist, and recommend the best plan. We also offer volume discounts for larger orders. In short, we will work very hard to make sure our price meets your needs and budget. Once we’ve all signed on the dotted line, you will then be provided with Commercial License keys that you can put into your already deployed environment (or into a new one) which will then immediately grant you full access to the entire suite of ClusterControl features that you have contracted.

ClusterControl
Single Console for Your Entire Database Infrastructure
Find out what else is new in ClusterControl

Benefits of Upgrading

While the free ClusterControl community version provides rich features that allow you to easily and securely deploy and monitor your open source databases, the Enterprise Edition provides much much more!

These are just some of the features awaiting you in the Enterprise Edition…

  • Advanced Backup & Restoration: With ClusterControl you can schedule logical or physical backups with failover handling and easily restore backups to bootstrap nodes or systems.
  • Automated Failover: ClusterControl includes advanced support for failure detection and handling; it also allows you to deploy different proxies to integrate them with your HA stack.
  • Topology Changes: Making topology changes with ClusterControl is easy; it does all the background work to elect a new master, deploy fail-over slave servers, rebuild slaves in case of data corruption, and maintain load balancer configurations to reflect all the changes.
  • Load Balancing: Load balancers are an essential component in database high availability; especially when making topology changes transparent to applications and implementing read-write split functionality and ClusterControl provides support for ProxySQL, HAProxy, and Maxscale.
  • Advanced Security: ClusterControl removes human error and provides access to a suite of security features automatically protecting your databases from hacks and other threats. Operational Reports come in handy, whether you need to show you are meeting your SLAs or wish to keep track of the historical data of your cluster.
  • Scaling: Easily add and remove nodes, resize instances, and clone your production clusters with ClusterControl.

In short, ClusterControl is an all-inclusive database management system that removes the need for your team to have to cobble together multiple tools, saving you time and money.

If you ever have any issues during this process you can always consult the documentation or contact us. If you need support you can contact us here.

Free Open Source Database Deployment & Monitoring with ClusterControl Community Edition

The ClusterControl Community Edition is a free-to-use, all-in-one database management system that allows you to easily deploy and monitor the top open source database technologies like MySQL, MariaDB, Percona, MongoDB, PostgreSQL, Galera Cluster and more. It also allows you to import and monitor your existing database stack.

Free Database Deployment

The ClusterControl Community Edition ensures your team can easily and securely deploy production-ready open source database stacks that are built using battle-tested, proven methodologies. You don’t have to be a database expert to utilize the ClusterControl Community Edition – deploying the most popular open sources databases is easy with our point-and-click interface. Even if you are a master of deploying databases, ClusterControl’s point-and-click deployments will save you time and ensure your databases are deployed correctly, removing the chance for human error. There is also a CLI for those who prefer the command line, or need to integrate with automation scripts.

The ClusterControl Community Edition is not restricted to a single database technology and supports the major flavors and versions. With it you’re able to apply point-and-click deployments of MySQL standalone, MySQL replication, MySQL Cluster, Galera Cluster, MariaDB, MariaDB Cluster, Percona XtraDB and Percona Server for MongoDB, MongoDB itself and PostgreSQL!

Free Database Monitoring

The ClusterControl Community Edition makes monitoring easy by providing you the ability to look at all your database instances across multiple data centers or drill into individual nodes and queries to pinpoint issues. Offering a high-level, multi-dc view as well as a deep-dive view, ClusterControl lets you keep track of your databases so you can keep them running at peak performance.

In addition to monitoring the overall stack and node performance you can also monitor the specific queries to identify potential errors that could affect performance and uptime.

Why pay for a monitoring tool when the ClusterControl Community Edition gives you a great one for free!

Free Database Developer Studio

The Developer Studio provides you a set of monitoring and performance advisors to use and lets you create custom advisors to add security and stability to your database infrastructures. It lets you extend the functionality of ClusterControl, which helps you detect and solve unique problems in your environments.

We even encourage our users to share the advisors they have created on GitHub by adding a fork to our current advisor bundle. If we like them and think that they might be good for other users we’ll include them in future ClusterControl releases.

ClusterControl
Single Console for Your Entire Database Infrastructure
Find out what else is new in ClusterControl

Why Should I Use the ClusterControl Community Edition?

These are just a few of the reasons why you should use ClusterControl as your system to deploy and monitor your open source database environments…

  • You can deploy knowing you are using proven methodologies and industry best practices.
  • If you are just getting started with open source database technology ClusterControl makes it easy for the beginner to deploy and monitor your stacks removing human error and saving you time.
  • If you are not familiar with orchestration programs like Puppet and Chef? Don’t worry! The ClusterControl Community Edition uses a point-and-click GUI to make it easy to get your environment production-ready.
  • The ClusterControl Community Edition gives you deployment and monitoring in one battle-tested all-in-one system. Why use one tool for scripting only to use a different tool for monitoring?
  • If you are not sure what database technology is right for your application? The ClusterControl Community Edition supports nearly two dozen database versions that you can try.
  • Have a load balancer running on an existing stack? With the ClusterControl Community Edition you can import and deploy your existing and already configured load balancer to run alongside your database instances.

If you are ready to give it a try click here to download and install the latest version of ClusterControl. Each install comes with the option to activate a 30-day enterprise trial as well.