Rado – Knowledge base – ScalaHosting https://www.scalahosting.com/kb All useful information for hosting, billing and sales in one place - ScalaHosting Blog Thu, 16 Feb 2023 12:39:13 +0000 en-US hourly 1 https://wordpress.org/?v=6.1.1 Why Are My Emails Going to Spam? https://www.scalahosting.com/kb/why-are-my-emails-going-to-spam/ https://www.scalahosting.com/kb/why-are-my-emails-going-to-spam/#respond Wed, 09 Nov 2022 09:54:45 +0000 https://www.scalahosting.com/kb/?p=5347 As a means of communication, email has existed for decades, and to say that it has withstood the test of time would be something of an understatement.

In the beginning, it was an alternative to the traditional snail mail. Later, it became a method for sending funny pictures to people on the other side of the planet. Right now, it’s, among other things, one of the most powerful marketing weapons out there.

Website owners like you use emails to engage and communicate with customers, so less-than-perfect deliverability could be a serious problem. Seeing your messages in people’s spam folders is the last thing you want.

But why does it happen sometimes? And what can you do to avoid it?

Let’s find out.

How Do Emails End up in the Recipient’s Spam Folder?

If an email ends up in the destination account’s junk folder, it’s because of one of two main reasons:

  • The message’s recipient put it there themselves.

This scenario is particularly frustrating because the person you’re trying to communicate with doesn’t necessarily think the message is spam. Sometimes, people drop emails in the junk folder while cleaning their inboxes. Every now and again, they flag emails by mistake, and they often don’t remember that they’ve subscribed to your service themselves.

Unfortunately, once you hit the Send button, there’s nothing you can do to stop people from flagging your messages as spam. Your only option is to write high-quality emails and keep your audience engaged. Later in this article, we’ll give you a few tips that may help.

In the meantime, let’s talk about the other main reason why your legitimate emails may end up in the spam folder.

  • The email was flagged by a spam filter.

Some sources reckon that more than 45% of all emails are spam. Others say that a whopping 85% of all sent messages are unsolicited.

Whatever the exact number, it’s clear that many of the emails flying around are spam. Users don’t want to deal with them themselves, so email providers and security companies develop spam filters to identify suspicious incoming emails and automatically reroute them to the junk folder.

These filters have evolved quite a bit over the years, and nowadays, they’re more advanced than ever. Even so, they sometimes get it wrong and flag a perfectly legitimate email as spam.

If this happens to you, you need to identify what caused the false positive and take the necessary steps to fix it. Let’s look at the most common scenarios.

Why Are Spam Filters Flagging My Emails?

When an email arrives at the destination server, it goes through a rather thorough examination. Spam filters look at a number of different things and calculate the email’s spam score based on them. If the score is too high, the message is diverted to the junk folder.

A high spam score indicates that there are problems you need to address. The issues usually concern one of the following aspects of your mail communication:

  • The email’s content.
  • The mail server’s configuration.
  • The sender’s reputation.

Let’s see the most common problems in all three categories.

Content Problems

Every email has a purpose, and its subject and body are responsible for achieving it. You have certain conversion rates to hit, but in your attempts to keep people engaged, you may make some mistakes that could trip spam filters and send your emails to the junk folder.

Here are some of the most common issues.

Misleading subjects.

Using deceptive and misleading subjects isn’t just bad practice, it’s a violation of the CAN-SPAM act.  If a spam filter detects discrepancies between your subject and the email’s body, this is bound to raise some red flags.

In addition, many spammers employ prefixes like “RE:” and “FW:” to grab the reader’s attention, so make sure you use them only for their intended purpose.

It should be clear where the email comes from, so personal messages and questions in newsletter subjects are a big no-no. The same goes for headlines that invoke a sense of urgency.

Certain words and phrases.

Spammers often try to convince victims that they’ll get something for nothing, so words and phrases like “no cost,” “free,” “lowest price,” and “additional income” raise immediate suspicion.

Using them once in an email is unlikely to send your email directly to the junk folder, but they can boost the message’s spam score, especially if you’re overly generous with them.

Poor grammar.

As spam victims can testify, fictitious members of Nigeria’s royal family could do with a few grammar lessons. Spammers often employ machine-translated text or use their limited skills to compose their messages, and the results are often pretty terrible from a grammatical standpoint.

Because of this, if spam filters see too many grammatical and spelling errors, the message will receive a high score.

Certain punctuation and formatting techniques.

Attention-grabbing techniques like successions of exclamation points or question marks, dollar signs, emojis, words in all caps, etc., should be avoided.

For one, their effectiveness is debatable, especially now, when you have so many other methods for keeping people engaged.

Furthermore, spammers frequently abuse them to get the user to click a link or open an attachment before spotting the red flags. As a result, they are bound to get your spam score up.

Excessive imagery.

Adding a logo and a couple of images inside the email’s body is perfectly fine. However, make sure you don’t get carried away.

On the one hand, your email will be slower to load and read, leading to a terrible user experience. On the other, because spammers try to get around word filters by including text in images, anti-spam tools will immediately flag a large number of pictures as suspicious.

Attachments.

Email attachments are regularly used for distributing malware, so if you plan to send files, you can expect your messages to be put under closer scrutiny.

Combine this with one or more other issues, and you can be sure that the spam filter will send your emails straight to the junk folder.

Suspicious-looking links.

Links are an important part of legitimate messages. However, they are also integral to many spam and phishing campaigns. A large number of links will get your score up, especially if they redirect to websites with reputation problems.

The ones most likely to get you into trouble don’t display the target URL in plain sight (e.g., users see https://domain.com, but when they click the link, they’re redirected to https://domain2.com). As a result, URL shortening services often trigger spam filters, as well.

A missing Unsubscribe link and other regulated information.

Modern regulators don’t like overly aggressive marketing techniques and insist on giving users an easy opt-out option. An Unsubscribe link is an essential part of any business email communication. In addition to helping you avoid your recipients’ junk folder, it also helps your company’s reputation.

Also, make sure you observe local regulations. For example, the US CAN-SPAM Act mandates that a physical address be included in all commercial email communication. If you send your messages without it, they may end up in the recipient’s spam folder.

A lack of a plain-text version.

Spammers are usually too lazy to create a plain-text version of their emails, so spam filters will likely hold your message in higher regard if you have one. Moreover, some servers and clients are configured to treat HTML emails as suspicious, so a text-only version could improve deliverability further.

Configuration Problems

The world wide web has dozens of different systems and mechanisms designed to minimize spam.

Your domain, hosting account, and the tools you use to send emails must be configured to work with them. If they aren’t, your messages may end up in recipients’ junk folders.

Let’s see a few of the most common scenarios.

Incorrect email authentication.

Up until a few years ago, email spoofing wasn’t that difficult, and spammers used to do it a lot. They would send their scam emails and make them look like they’re coming from a legitimate address. In response, security specialists built the SPF, DKIM, and DMARC authentication protocols.

If your domain uses them, your recipient’s anti-spam systems can confirm that the emails you send come from a legitimate source. If it doesn’t, your messages may end up in the spam folder.

Incorrect rDNS configuration.

During a DNS lookup, you have a domain name, and you’re trying to figure out which IP it resolves to. During a reverse DNS (or rDNS) lookup, you already have the IP, and you’re trying to figure out whether a particular domain is connected to it.

This is especially useful for filtering spam because although spammers can spoof the sender’s domain name, they can’t change the source IP.

When an email lands on the destination server, the spam filters will check the sender’s rDNS record to  see if the IP and the domain match. If they do, the message goes through. If they don’t, it is likely to land in the junk folder.

The rDNS record is often set automatically when you’re pointing your domain to your hosting account. However, you may need to add it manually sometimes.

Inaccurate From/Reply-To information.

You need to be careful when configuring contact form plugins and other tools that automate outbound email communication.

The emails must be sent from an active email address, and the return path must also lead to a working inbox. If that’s not the case, the recipient’s spam protection may flag your communication as suspicious.

A missing MX record.

The job of the MX (or mail exchanger) record is to specify a mail server that accepts incoming emails. Technically, you can send emails without one. However, you don’t want to do it because, to spam filters, this is a massive red flag.

Domains with no MX records can’t receive messages, so spam protection systems will assume that your domain isn’t supposed to be sending out emails, either. As a result, the outgoing communication will be redirected straight to the junk folder.

Your mail server doesn’t comply with the RFC standards.

The RFC standards were developed by the Internet Engineering Task Force, and it’s safe to say that without them, the internet would be a very different place. Among them are instructions for how a mail server should be set up and how it should implement and use the available technologies.

If your mail server deviates from them, spam filters are more likely to view your emails as suspicious.

Your mail server’s hostname doesn’t resolve to the correct IP.

This is yet another mechanism spam filters use to identify and block address spoofing. The recipient’s spam protection system checks the hostname of the sender’s mail server. The hostname should resolve to the IP the email is coming from. If it doesn’t, the message will be flagged as suspicious and will likely end up in the spam folder.

A poorly configured mail server on the recipient’s end.

Your recipient’s mail server may filter incoming messages according to specific criteria. If your email doesn’t meet them, it could end up in the spam folder.

Unfortunately, given the pretty much infinite configuration options, it’s difficult to guess why your messages are being flagged. You often have no other choice but to contact the recipient directly and ask them to change their filters or whitelist you as a sender.

Reputation Issues

The content of your messages and your mail server configuration aren’t the only things that could get you into trouble. Nowadays, spam filters try to ensure only messages from reputable sources end up in users’ inboxes.

As a sender, you go through a thorough background check, and your emails will only be cleared if the anti-spam systems think everything is fine.

The checks are mainly based on whether there have been indications of spam coming from your domain, mail server, or IP address.

Let’s look at some factors that may harm your reputation.

People are flagging your emails as spam.

In addition to a predetermined set of triggers and blacklists, spam filters also rely on users’ judgment when deciding which emails are legitimate.

If a single person flags one of your emails as spam, they are unlikely to pay too much attention to it. However, if multiple users start dropping multiple messages in the junk folder, then anti-spam protection systems will assume that something’s wrong.

A bad email list.

If you’re tempted to expand your reach by buying a cheap email list and sending emails to people who haven’t subscribed to your service, it might be time to rethink your strategy. Sending messages to users who haven’t given their explicit permission to receive communication from you is a blatant violation of the CAN-SPAM Act.

The fines are astronomical (we’re talking thousands of dollars per email), but even if you forget about them, your emails will likely end up in the users’ spam folders, so you will achieve nothing.

Low engagement.

Passing through the spam filters once doesn’t constitute success. Email service providers are also interested in what people do with the messages in their inboxes. If they see that people aren’t interacting with emails coming from a particular sender, it’s only a matter of time before they start viewing these emails as more suspicious than others.

Even without the threat of being flagged for spam, low engagement levels are still bad news because they indicate that you’re doing something wrong.

Your domain has been marked as unsafe.

If your website has been compromised and used for malicious purposes, Google will likely flag it as unsafe. When users try to visit your domain, they’ll see a full-screen alert telling them that the site ahead may be deceptive.

Predictably, spam filters will also treat communication from your domain as suspicious and will likely send it straight to the junk folder.

Your IP has been blacklisted.

Spam filters’ job is to keep known spammers away from people’s inboxes, so naturally, if they find out that your IP has been sending out unsolicited messages, the address will be blacklisted immediately, and your outbound communication will be either tossed in the junk folder or blocked altogether.

The worst thing is, sometimes, it’s not even your fault. For example, if you’re on a shared hosting plan, you use the same IP as hundreds of other website owners. Even a single abuser could get your emails blocked.

Your IP has a poor reputation.

Historic involvement in spam campaigns isn’t the only thing that could get your IP address into trouble. When anti-spam systems examine your email, they also check for a wide range of metrics related to the IP. If too many emails are sent from the same address at once, this can raise a red flag, and the same goes for high bounce and low open rates.

How To Ensure Your Emails Arrive At Their Intended Inbox

As you can see, plenty of things can get in the way of establishing a legitimate communication channel between you and your customers.

Spam filters will continue to churn out false positives, and there’s nothing you can do about that. However, there are a few things you can check surrounding your emails and the services you use for sending them. With the right tweaks, you stand a better chance of ensuring your emails go where they’re supposed to. Let’s have a look.

1. Review your web hosting options.

You may as well start with the hosting service. Shared plans are cheap and can be a perfect launchpad for your new project. However, you must remember that you’re sharing the same IP with many other people. A single sketchy account could ruin the reputation of the entire server, so you need to keep your fingers crossed and hope that your neighbors behave themselves, which isn’t always the best strategy.

If you really want to grow your new project and build a strong relationship with your customers, you should probably consider a hosting service with a dedicated IP address. A virtual private server is the obvious choice because, in addition to the dedicated IP, it gives you a completely isolated environment, infinite scalability, and more reliable performance at a reasonable price.

You can find out more about ScalaHosting’s VPS solutions and their advantages in the video below.

ScalaHosting Explainer Video

2.  Make sure your domain is configured properly.

When users set up a new hosting account, they try to open the website in a browser and send out a couple of test emails. If they don’t encounter any errors, they assume everything’s fine. However, as we’ve established already, things aren’t quite as simple as that.

If you want your emails to be reliably delivered, you must ensure the MX, SPF, DKIM, and DMARC records are correctly configured. Check your welcome email and, if you need to, ask your host what value you need to set for these records and how.

If you use SPanel, you can control your DNS records from the DNS Editor section in the User Interface.

If you’re adding an MX record, you need the MX option from the Type drop-down menu. SPF, DKIM, and DMARC are enabled via TXT records.

3. Keep an eye on your domain and IP reputation.

If your emails start dropping into recipients’ spam folders, checking whether your IP has been blacklisted must be one of the first things you do. Most spam filters rely on the following real-time blocklists (RBLs):

  • SpamHaus
  • SpamCop
  • Barracuda
  • SORBS
  • JustSpam

If your IP ends up on one of these lists, you need to request its delisting as soon as possible if you want to restore your normal email communication. The RBLs will usually request proof that you’re sticking to the rules before unblocking the address.

It might not be a bad idea to set aside a few minutes every now and again to check whether your IP has been blacklisted.

Once again, SPanel users have it easy. Our all-in-one management platform has an IP reputation management tool that checks whether the server’s address is featured on any of the blacklists above and alerts you if it is.

Your IP’s reputation is visible in the top bar on the homepage of SPanel’s Admin Interface.

When it comes to domain reputation, services like Google’s Postmaster Tools and Talos Intelligence’s Reputation Center can give you a better idea of how spam filters view emails coming from your site.

4. Configure your mail-sending applications and services correctly.

Contact forms and newsletter services need to be set up correctly.

Use an active email account as a sender. Many companies now use a personal address (alice@company.com) even for automated emails. You have to agree that it’s better than sending messages from newsletter@company.com or no-reply@company.com, and because this is a real inbox, it won’t boost your spam score.

Filters will also punish you if there’s no valid reply-to address. Even if you don’t expect any replies to your emails, you should still keep a working inbox to avoid a high spam score. Checking it every now and again may not be a bad call, either.

5. Keep your email lists clean.

Build a good strategy for managing your subscriber base. If you use an email list you’ve bought online, scrap it and start over. You can only build a successful business if you stick to the rules and do it naturally. This means communicating only with people who want to hear from you.

It’s not just about the subscriber count, though. Email clients and service providers view low engagement levels as a bad sign and could flag messages if they think users aren’t interested in them. That’s why it’s a good idea to track your open and click-through rates and single out accounts that usually ignore your emails. Removing them from your subscriber list is your best call in the long run.

Users must also be able to remove themselves. The Unsubscribe link must be clearly visible and should let people quickly opt out of your email list. Any hoops and “Are you sure?” prompts are unlikely to work, so it’s best to avoid them.

Also, according to the CAN-SPAM Act, every unsubscribe request must be honored within 10 days of its filing. Make sure you stick to this deadline.

6. Try to boost your engagement levels.

The more people interact with your emails, the less likely they are to forget that they’ve subscribed to your services and flag your messages as spam.

Keep a close eye on vital metrics like conversion and bounce rates and look for ways to improve the performance. There are plenty of strategies (e.g., including CTAs as buttons rather than text, sending messages at specific times of the day, etc.), and choosing the right one can not only help you grow your business but also improve deliverability.

Some companies ask users to whitelist the sender address, which won’t work all the time but could help you avoid a few more spam folders.

If you’re a smaller business, you can even scan through your subscriber list for accounts that don’t seem particularly engaged with your content and send them a so-called win-back email. This will help you identify and avoid mistakes you’ve been making while running your email campaigns.

7. Avoid spam triggers.

When they’re building their spam protection mechanisms, service providers can use a backlog of billions of unsolicited messages to identify trends, commonly used words, phrases, and formatting techniques. All these act as triggers that either send your message directly to the junk folder or increase your spam score.

The list is too long to cover in detail, and if you don’t have the time to research it thoroughly, you can follow the “if it looks spammy to you, don’t use it” mantra.

Avoid overusing words and phrases like “free” and “limited-time offer.” Think of ways to modify your text and omit them, and if you can’t, put them in context and make sure they’re never in all caps.

If you think you can use clever formatting tricks (e.g., F R E E) to get around filters, you need to think again. This sort of thing is bound to send your email to the spam folder.

Remove any excessive dollar signs and exclamation marks from the subject and the body of the message, and don’t overuse emojis. Make sure there’s no unwarranted sense of emergency, and try to avoid the techniques spammers use to get users to act quickly.

As a business, you need to stay up-to-date with the new email marketing trends and stay honest with your audience. This is the best way to ensure your messages end up in their designated inboxes.

8. Proofread your emails.

Poor grammar and spelling mistakes are historically connected to unsolicited emails, so you shouldn’t be too surprised if you see some of your messages being flagged if they’re not very well-written.

If you’re writing an email in a language you don’t speak, avoid automatic translators whenever possible. They may be suitable for informal communication, but their output sometimes contains awkward grammatical structures that could trip the spam filter.

Have a good look at the message before sending it, and don’t forget to run it through a spell checker. If your emails are in English, you can utilize automatic tools like Grammarly to eliminate grammatical mistakes and make your text easier to read.

In addition to improving deliverability, perfect grammar will also make your business seem more trustworthy.

9. Stick to HTML best practices.

HTML in emails is excellent for making your messages more distinguishable. However, spammers also love to include HTML elements in their emails, so if you’re not careful, you may get flagged by your recipient’s spam protection mechanisms. Luckily, you can follow a few good practices to avoid this.

The recommended width of the body is between 600px and 800px. Your logo, a background, and a few clickable buttons are a nice addition to your emails, but don’t overstuff your message with pictures, as this may seem suspicious to many spam filters.

Keep the CSS code as clean as possible, and use easy-to-read fonts supported on all devices and operating systems. Speaking of devices and operating systems, your emails will ideally have responsive design.

On the one hand, you need to ensure you’ll reach your subscribers, regardless of their platform. On the other, an email that adapts to the screen resolution will have a higher overall score and is less likely to be flagged by spam filters.

Last but not least, make sure there are no JavaScript elements in your email. JS is often used during malware campaigns and is guaranteed to be flagged as suspicious.

10. Pay some attention to your links and attachments.

If you see some of your emails ending up in your subscribers’ spam folders, reviewing all the links in your messages might not be a bad idea. Ensure users know what they’re clicking on and try to be as transparent as possible. Every website you link to has to have a good reputation.

Sometimes, affiliate links may also trigger spam filters, so make sure you remove them as soon as you encounter any problems.

The same goes for attachments. If you need to send something to one or more of your subscribers, you’re better off uploading it to a reputable file hosting service and then inserting a link in your message. Even if you do that, you still need to be sure that users know what they are receiving and why.

11. Don’t send too many emails at once.

While your business is still relatively small, it may be a good idea to be careful with the number of messages you send simultaneously. This is especially true for those using a shared IP address.

Sources that blast out large volumes of emails at once often pop up on the radar of service providers and spam filters. The messages are scrutinized more closely, and if there are other problems, they could easily be rerouted to the junk folder.

To avoid this, you can segment your subscriber list according to a specific criterion (e.g., the time zone can be suitable in many cases) and send your messages in batches rather than all at once.

Conclusion

When everything goes to plan, your emails appear in users’ inboxes mere moments after you send them. However, as we discovered today, things don’t always go to plan.

In fact, your message goes through a bit of a journey, and ensuring it arrives at its destination is sometimes more difficult than it seems.

However, if you configure your service correctly, compose your emails the right way, and keep your reputation clean, you should have absolutely no deliverability issues.

FAQ

Q: Why have my emails started going to the spam folder?

A: Most likely, something has tripped the spam filters, and they are now considering your emails suspicious. Think about recent changes you’ve made to your emails’ layout or content, and undo them to see if this will have a positive effect. Look into possible configuration problems and check your IP and domain reputation for any issues.

Q: How do I stop my emails from going to spam?

A: There is no one-size-fits-all answer to this question. Many things could trip the spam filters, so if your emails are delivered to users’ junk folders, you need to thoroughly investigate the cause. The trigger may be as harmless as a word or a link in your body, but it could also have something to do with your mail server’s configuration or the IP’s reputation.

Q: How do spam filters work?

A: A spam filter relies on a complex algorithm to calculate the spam score of every email that arrives at the destination server. It considers a number of different factors, including how people have treated emails from this sender in the past, the message’s subject and body, and the source IP’s reputation.

]]>
https://www.scalahosting.com/kb/why-are-my-emails-going-to-spam/feed/ 0
How to Back Up a MySQL Database https://www.scalahosting.com/kb/how-to-back-up-a-mysql-database/ https://www.scalahosting.com/kb/how-to-back-up-a-mysql-database/#respond Tue, 01 Nov 2022 13:46:47 +0000 https://www.scalahosting.com/kb/?p=5302 Backing up your site’s files is relatively straightforward. In essence, you put them all in an archive, which you can later extract and restore everything. When it comes to generating a backups of your MySQL databases, however, things are a bit more complicated.

Today, we’ll look into the different types of database backups, and we’ll see some of the most popular techniques for creating and restoring a safe copy of your website’s data.

Types of MySQL Backups

MySQL is a relational database management system. The information is stored in tables, with relations between the different datasets. In effect, these relations build the structure of the database.

A working backup of a database must be able to recreate the tables and the relations between them in the way they are originally organized. Otherwise, your website wouldn’t work.

There are two main types of database backups in MySQL:

Logical backups

A logical backup exports (or dumps) the data and the data structure to an SQL file. The SQL file itself contains the SQL statements (e.g., CREATE DATABASE, CREATE TABLE, etc.) required to rebuild the database. Because SQL statements tend to be universal, logical backups are often used to move databases from one host to another.

Physical backups

A physical backup is a copy of the database’s datadir directory. All the tables and the data inside them are copied in their original file formats and can be restored in a fully functioning database as long as the structure is maintained. 

Physical backups are quicker but can only work if they are restored from the same database engine on the same MySQL version. Hence, they aren’t always suitable for moving a database from one environment to another.

Your backup strategy should be determined by a number of different factors including the hosting setup, the size of the database, and your needs.

Logical backups tend to be more common because, as we’ll find out in a minute, tools that can create them are usually readily available. Furthermore, logical backups can copy portions of the database, giving you more flexibility and a quicker resolution when you’re dealing with data corruption problems in specific parts of the database.

Overall, while physical backups do make sense in a few specific scenarios, for the regular website owner, logical ones are easier to set up and manage. That’s why today’s article will focus on them.

Creating a Database Backup via the Command Line

If you use the command line, you’ll export MySQL databases with the mysqldump utility. The lack of a graphical user interface means many will likely prefer one of the other methods. However, if you decide to give it a go, you’ll see that there’s nothing too complicated about the process.

Your first job is to access your hosting account via SSH. Modern operating systems support the protocol out of the box. Windows computers connect to remote servers via PowerShell or the Command prompt tool, and Unix-based systems do it with the Terminal.

Some people prefer dedicated SSH clients like PuTTY, and if you have an SPanel server, you can open a shell directly via the SSH Terminal available on the homepage of the User Interface.

Before you continue, make sure you have access to a MySQL user account with privileges over the database you’re about to back up. If you have access to root or any other account with SYSTEM_USER permissions, you can export data from any database you want.

It is worth mentioning that mysqldump won’t be able to back up a database if one of the tables is corrupted. To make sure everything will go smoothly, you can use the mysqlcheck command-line utility to check for errors.

The command looks like this:

$ mysqlcheck [the database’s name] -u [your MySQL user’s username] -p

After you provide your user account’s password, mysqlcheck will scan all tables for data corruption. Ideally, the output will look like this:

To check all databases for errors, add the –all-databases option. Having scanned your databases for errors, you can proceed with the backup.

The mysqldump utility covers quite a few scenarios. Here are the most common ones:

Backing up a single database via the command line.

To back up one of the databases on your account, you need a command that looks like this:

$ mysqldump -u [your MySQL account’s username] -p [the name of the database] > [the name of the file you want to export the data to]

With the above command, the user test_user exports the database test_database to the file backup.sql. All you need to do is enter the user account’s password. If backup.sql doesn’t exist, MySQL will automatically create it.

Backing up specific tables from a selected database

The mysqldump utility can also back up specific tables only. Just add the name of the table after the database name. Here’s an example:

In the screenshot above, test_user is backing up the table wp_posts from test_database2 to the posts.sql file. To dump multiple tables to the same file, simply add their names separated by spaces. For example:

$ mysqldump -u test_user -p test_database2 wp_posts wp_options wp_users wp_links > wordpress.sql

Backing up multiple databases

You can export multiple databases to the same SQL file with mysqldump. To do that, use the command above, adding the –databases option and the names of the databases separated by spaces. For example:

$ mysqldump -u test_user -p –databases test_database test_database2 test_database3 > backup.sql

Backing up all accessible databases

If you want to back up all the databases you have access to, replace the database name with the –all-databases option. For example:

This will dump all databases except information_schema, performance_schema and any other default MySQL schemas. To include them in the backup, add the — skip-lock-tables option.

Backing up a database structure only

Sometimes, you may need to generate a backup of a database’s structure without the data stored in it. The mysqldump utility can do it if you include the –no-data option. Here’s what the command looks like:

Backing up the data without the structure

The reverse is also possible – you can backup the data without the structure. The option is –no-create-info, and the command looks like this:

The mysqldump utility won’t print a message telling you that it has successfully backed up your database, so you can use the ls command to confirm that the SQL file has been created.

Dumping a large database with mysqldump

Using mysqldump on larger databases could be trickier. If you have lots of GBs to back up, you may experience increased server load, and if the database is really big, the entire operation could fail.

The first problem is the amount of storage space the SQL file takes up. Large databases produce large backups, but the good news is that you can pipe mysqldump’s output through gzip and compress the SQL file before writing it on the disk.

The command will looks like this:

$ mysqldump -u [your mysql account’s username] -p [your database’s name] | gzip > [filename].sql.gz

On the one hand, this reduces the size of the generated backup, and on the other, it cuts the IO load.

The mysqldump utility has a couple of other options that may also help. The –opt option encompasses several different command parameters that optimize the dump operation. Bear in mind that they make the backup more difficult to understand by other database systems, so this may not be the best approach if you want to migrate the database to a new host.

The –quick option may also work. By default, mysqldump stores each table row into memory before dumping it into the SQL file. with the –quick option, the data is transferred directly to the backup.

If a large backup operation fails, you can try to increase the max_allowed_packet parameter in MySQL’s configuration file (the my.cnf file usually stored in /etc). This is usually necessary only when you’re trying to shift dozens of gigabytes of information, and it’s not guaranteed to succeed.

Backing up that much data with mysqldump is never going to be easy, and many experts suggest that in such cases, you’re better off using a physical backup solution like MySQL Enterprise Backup or Percona XtraBackup.

Creating a Database Backup With phpMyAdmin

Many shared and managed hosting accounts come with phpMyAdmin preinstalled. Its default login URL is https://[your server’s IP]/phpmyadmin (some hosts change it for security reasons), though it’s often accessible from the control panel, as well.

It has an easy-to-use graphic interface, meaning you don’t need to learn any new commands to manage your database. You can also export data to an SQL file with a few mouse clicks. Here’s how to do it.

Backing up a single database

After you open phpMyAdmin, you’ll see a list of all the databases on your hosting account.

Click on the one you want to back up and go to the Export tab.

You can choose the export method and the format. It’s preferable to keep the SQL format, as this will give you more options when you need to restore the database.

As for the method, Quick is selected by default, and if you leave it like that, phpMyAdmin will dump the entire database (the data and the structure) into the SQL file.

If you select the Custom radio button, you’ll see quite a few more options. First, you can select which tables you’d like to dump. You can back up the structure, the data, or both.

Further down, you can have phpMyAdmin automatically rename the database, its tables, and/or columns while exporting them. This is where you specify the filename template as well. By default, it’s set to “@DATABASE@” which means that phpMyAdmin will name the SQL file after your database.

You can lock the database’s tables or export them as separate files. Options for the exported file’s encoding and compression are also available in this section. You can skip tables over a certain size and see the output as text instead of dumping it into an SQL file.

In the Format-specific options section, you decide whether to have comments metadata, and other formatting elements in your SQL file. You can have phpMyAdmin export the database as a transaction, disable foreign key checks, and dump views as tables.

There’s also a drop-down menu letting you make the backup backwards compatible with a number of older systems.

Next, you have the Object creation options section. It mainly deals with the statements that will be added to the SQL file, and they concern the way the SQL file will rebuild the database.

For example, the CREATE DATABASE and USE statements can save you some time when you need to restore the data to a new empty database. If, on the other hand, you plan on restoring the data into an existing database, you can have the DROP statements overwrite the old data.

If the IF NOT EXISTS option is enabled, your backup will check for matching tables before trying to create them, and with the AUTO_INCREMENT checkbox, you can append the backed up data to existing tables.

In the Data creation options section, you’ll find more settings related to the way your data will be restored. There are a few advanced options that may require a tweak in certain cases. However, for most website owners, the default configuration should work fine.

After you’re done tweaking the settings, click Go to generate the SQL file.

Backing up multiple databases

The steps for backing up multiple databases is pretty much the same as those for dumping a single one. The difference is, instead of selecting a database from the menu on the left, you need to go straight to the Export tab from the homepage.

If you’d like to back up all your databases at once, set the export method to Quick and the format to SQL, and click Go to have phpMyAdmin generate the backup. If you select the Custom method, you can pick which databases to backup. Click Unselect all and us the mark those you want to back up using the Ctrl/Cmd key.

Further down, in the Format-specific options section, you can decide whether to dump the data from the selected databases, their structure only, or both.

The rest of the settings are the same as the ones you see when you’re exporting a single database.

Creating a Database Backup With MySQL Workbench

MySQL Workbench is another free database management tool. You can set it up on your home computer and control your databases remotely.

You’ll first need to connect to your hosting account. There’s a + button in the MySQL Connections section on the homepage.

The dialog asks you for the type and details of the connection. The best option is to connect to your server using the standard TCP/IP protocol over SSH. This way, the communication will be encrypted, and your data will be safe.

You’ll have to provide the SSH login credentials as well as the ones for your MySQL user account. After you fill in all the required fields, click Test Connection to ensure everything works. If it does, hit OK to save the connection.

After you connect to the server, open the Administration tab in the Navigator section and click Data Export.

In the next window, you’ll see the databases your user has access to and the different export options

You can select the databases you want to with the using the checkboxes next to them. And when you click on a database, you’ll see all its tables, so you can exclude specific tables from the backup.

Below the lists of databases and tables, you have a drop-down menu letting you decide whether you want to back up the database, the structure, or both. When you’re ready with the configuration, click Start Export.

Creating a Database Backup With SPanel

SPanel strives to cover every aspect of modern website building and development. This includes database management, which is why every SPanel server comes with phpMyAdmin preinstalled.

However, we wanted to ensure you have even more control over your site’s data, which is why, you have quite a few tools in the MySQL Databases section inside SPanel’s User Interface.

To access the User Interface, you can either use the account’s login credentials at https://[the account’s domain name]/spanel/ or log in to your server’s Admin Area and select Manage from the Actions drop-down menu next to your account.

Once you access the MySQL Databases section, you’ll see a list of all the databases on your account. Locate the one you want to back up, open the Actions drop-down menu, and select Export & Download Database.

SPanel will put the data into an SQL file and save it inside the account’s home directory. Then, a popup lets you download the file for local storage and remove it from the server.

As you can see, backing up the database before making any changes to your site is a matter of a couple of clicks. Even if you forget to do it, however, SPanel still has you covered.

Every SPanel customer at ScalaHosting gets daily backups of all the files and databases on their server. The backups are stored in a remote location. They’re not in the same data center as your production site, so even in case of an accident, you have a much better chance of restoring the data.

Speaking of restoring data, let’s see what you need to do to rebuild a broken database from a backup.

Restoring a MySQL Database

Once again, you have several methods to choose from, and which one you’ll pick depends on many things, including your hosting platform, your technical skills, and your needs.

Restoring a database via the command line

To restore a database from the command line, you first need to upload the backup file to your hosting account. The easiest way is via an FTP client or from your control panel’s File Manager.

You can place the SQL file in any folder you want, but to keep the commands simple, it’s probably best to save it in the home directory. After you restore the database, you can delete the backup file to free up space.

Next, create a new empty database and a MySQL user account with access to it. You can also use an account with SYSTEM_USER privileges.

Connect to your hosting account via SSH and enter the following command:

$ mysql -u [your user account’s username] -p [the name of the database] < [the name of the backup file]

In the above example, user account test_user is restoring data into database test_database2 from the file backup.sql.

Restoring a database with phpMyAdmin

You can use phpMyAdmin’s import feature to restore databases from SQL files. You need to remember that there’s often a limit on how big the SQL file can be, so if you have a larger database, you’ll probably need to use one of the other methods.

To import data into an existing database, open phpMyAdmin and select the database you want to restore from the menu on the left. If the database doesn’t exist, you’ll need to create it first.

Go to the Import tab, click Choose File, and select the SQL backup from your computer.

The most important option on this screen is the Format drop-down. You have to ensure it’s set to SQL. The default configuration will likely work fine for most website owners. Click Go to import the data into the database.

Restoring a database with MySQL Workbench

Like the other utilities we’re discussing today, MySQL Workbench has both export and import capabilities. To restore a database, launch MySQL Workbench and open a connection to your server. In the Navigator section, select the Administration tab and click Data Import/Restore.

Click the Import from Self-Contained File radio button, and select the SQL backup file from your computer.

Finally, click Start Import to restore the database.

Restoring a database with SPanel

If you have an SPanel server, you can restore your database from an SQL backup file using any of the methods we’ve described so far. However, you can also retrieve the data from one of the automatic daily backups SPanel generates.

When setting up your new SPanel server at ScalaHosting, you can choose how many backups you want to have stored at any given time. By default, you have a daily backup that is kept for 24 hours. However, we also have three- and seven-day options.

The backups are accessible via the Restore backup section on the homepage of SPanel’s User Interface.

First, choose the date of the backup you want to restore and click Browse Databases to see the databases backed up on the selected day.

Find the database you need and open the Restore drop-down menu.

You have three options:

  • Download an SQL file with a backup of the database.
  • Restore the original database.
  • Restore the data in another database. SPanel will open a dialog requesting the name of the database you’d like to use. You can restore the data in an existing database or enter the name of a new one. SPanel will automatically set it up for you.

Potential Problems While Trying to Backup a MySQL Database

The export process can fail and result in an error for a couple of different reasons. Luckily, troubleshooting the problem is usually pretty straightforward. Let’s have a look at some of them.

 The MySQL Service isn’t working

First, you need to make sure the MySQL server is running on your hosting account. You can do it over SSH with the following command:

$ service mysql status

If you use SPanel, you can also check whether MySQL is running from the Admin Interface. The list of essential service is available in the Server Status menu, and if the MariaDB Database Server is down for some reason, you can bring it back online from the Restart Service section.

There are corrupted tables in your database

As we mentioned already, you can use the mysqlcheck command-line utility to see whether there are any corrupted tables in your database. It can also fix errors in case it fails because of a broken row or table.

All you need is the -r option:

$ mysqlcheck [the database’s name] -u [the user account’s username] -p -r

Errors can also be addressed via phpMyAdmin and SPanel.

In phpMyAdmin, pick the database from the menu on the left, and you will be redirected straight to the Structure tab, where you’ll see a list of all the database’s tables. Use the checkboxes next to the tables you want to repair (if you’re not sure where the errors are, you can use the Check all option at the bottom) and pick Repair table from the With selected menu.

With SPanel, the process is even simpler. Log in to the account’s User Interface and go to MySQL Databases. Scroll down to the list of databases, find the one you want and open the Actions drop-down menu next to it. After you select Repair database, SPanel will locate and fix any errors that might be present in the database’s tables.

Not enough disk space

The backup is generated on the server, so it inevitably takes up some storage space. If you exceed your account’s capacity while you’re backing up the database, the process will fail.

Your first option is to pipe the backup through gzip. This will reduce its size and may be enough to let you retrieve the SQL file in an archive. However, you should also think about deleting any unnecessary information from your account, optimizing your database, and possibly upgrading your account, so you can have more storage space.

]]>
https://www.scalahosting.com/kb/how-to-back-up-a-mysql-database/feed/ 0
How to Delete a MySQL Database https://www.scalahosting.com/kb/how-to-delete-a-mysql-database/ https://www.scalahosting.com/kb/how-to-delete-a-mysql-database/#respond Wed, 26 Oct 2022 09:11:52 +0000 https://www.scalahosting.com/kb/?p=5272 MySQL is everywhere. The relational database management system powers most web applications and is integral to almost all modern websites.

Most likely, your project uses it as well, and you may have not one but multiple MySQL databases on your hosting account.

But what do you need to do if you want to get rid of one of them?

Let’s look at the different options.

Deleting a MySQL Database Through the Command-Line Interface

The traditional way to delete MySQL databases is via the command line.

Those of you with less experience may be a bit intimidated by the prospect of using commands, but the truth is, if you approach the task meticulously, you’ll see that there’s little to go wrong.

Deleting a MySQL database involves several steps, which we’ll now go into.

1. Log in to your hosting account via SSH.

There are several options for establishing an SSH connection.

You can use your operating system’s command-line tool. If you use Windows, you can choose between Command Prompt or PowerShell, and if you’re on a Unix-based OS, you have the default Terminal as well as a number of third-party applications with the same functionality.

The command for starting an SSH session looks like this:

ssh [your account’s username]@[your server’s IP]

If the server uses a custom SSH port (the default one is port 22), you need to add -p followed by the port number.

After successful authentication, the server will start the session.

A second option would be an SSH client application like PuTTY. Although native SSH support is now available on all operating systems, some people continue to prefer dedicated clients because of the additional features and the ability to easily access saved sessions.

If you use SPanel, you have a third option. You can log in to the User Interface and open the SSH Terminal. SPanel will automatically redirect you to the command-line interface and open a shell.

2. Log in to the MySQL server.

You need to use a user account with sufficient privileges to delete a database. If you have an account with SYSTEM_USER privileges (like the root account, for example), you can delete any database you want. Other accounts may have access to specific databases only.

Whatever the case, you’ll need the following command to log in to the MySQL server:

mysql -u [the MySQL user’s username] -p

After providing the user account’s password, you’ll see the mysql> prompt.

3. Identify the database you want to delete.

From now on, we’ll use SQL commands. Generally speaking, the syntax, especially for simple tasks like deleting a database, isn’t that complicated. However, there are a few things that may catch newbies out.

First, it’s accepted that SQL statements must be written in uppercase letters for readability purposes. Mind you, this is more of a guidance than a rule. The commands will work even if you don’t stick to it.

What you do need to remember, however, is that all SQL commands end with a semicolon. Without it, MySQL interprets the Enter key as a new line.

Deleting a database via the command line is irreversible, so before you go on, you want to make sure you erase the correct one. That’s why it might not be a bad idea to go through the list of existing databases on the account and ensure you get the name right.

To see all databases, use the following command:

SHOW DATABASES;

MySQL will display a list of your user account’s databases.

Locate the database you want to delete and make sure you memorize its name.

4. Delete the database.

A single command deletes the database. It looks like this:

DROP DATABASE [the name of the database];

There’s no “Are you sure?” prompt, and unless you have a backup, you won’t be able to restore the database after you hit enter, so make sure you double-check everything.

5. Confirm that the database has been successfully removed.

MySQL’s output isn’t especially helpful. In fact, usually, all you get is a Query OK message.

That’s why many people prefer to confirm that the database has been successfully deleted with the SHOW DATABASES; command.

Deleting a Database With the mysqladmin Binary

There’s another method for deleting a MySQL database via the command-line interface. The mysqladmin binary is a valuable tool that simplifies a number of database administration tasks, including setting and changing the root password, checking status variables, threads, client processes, etc.

It’s accessible only via the command-line interface, so before you can use it, you need to log in to your hosting account via SSH.

You can delete a database with it, as well. All you need is the name of the database and the login credentials of a MySQL user account with access to it.

The command looks like this:

$ mysqladmin -u [the user account’s username] -p drop [the database’s name]

Note that this is not an SQL command. You can execute it without logging in to the MySQL server, so you don’t need a semicolon at its end.

This time, you get a warning that dropping the database will irreversibly erase all the data inside it, and you need to confirm that you’re sure you want to proceed. In the end, mysqladmin will inform you that the database is deleted.

Deleting a Database in phpMyAdmin

The phpMyAdmin database administration platform is a part of many shared and managed hosting accounts nowadays. It has all the tools you need to manage your MySQL databases, and it’s integrated into quite a few popular web hosting control panels, including cPanel and SPanel.

It also has an intuitive graphical interface, so you don’t need to memorize any commands.

Deleting a database is a matter of a few mouse clicks.

1. Log into phpMyAdmin with a MySQL user account that can delete databases.

The default phpMyAdmin login URL is https://[your server’s IP]/phpmyadmin/, though some hosting providers change it for security reasons.

2. Go to the Databases tab and select the database you want to delete.

Under the Databases tab, you’ll find your user account’s databases as well as a couple of default schemas (information_schema and performance_schema). Find the database you want to erase and select the checkbox next to it.

3. Click Drop and confirm that you want to delete the database.

The Drop button is situated just above the list. After you click it, phpMyAdmin will warn you that you are about to delete the entire database. All you need to do is confirm that you want to proceed.

Deleting a Database With MySQL Workbench

MySQL Workbench is another database administration platform that helps you manage your databases without typing commands or queries. Unlike phpMyAdmin, it’s not installed on your hosting server. Instead, you set it up on your Windows, Linux, or Mac computer and use it to connect to a remote server or develop your databases locally.

Let’s see how you can remove databases from your hosting account.

1. Connect to your web hosting server.

Your first job is to establish a connection to your web hosting account. On the home screen, you’ll see a + button in the MySQL Connections section.

Workbench has a range of different mechanisms for connecting to the remote server. The one you should go for is Standard TCP/IP over SSH. With it, the communication between the server and your computer will be encrypted and, therefore, more secure.

You first need to provide the server’s IP address, SSH port, and your SSH login credentials. MySQL Workbench can also use SSH keys for faster connections and extra security.

Next, you need to configure Workbench to use your MySQL user account. To delete a database, you’ll need to use an account with the correct privileges.

You can use the Test connection button to ensure you’ve provided the correct details. With the OK button, you save the connection, and it becomes accessible from Workbench’s home screen.

2. Find the database you want to delete.

After you connect to the server, You’ll see the main dashboard. In the Navigator section, you need to open the Schemas tab. It contains a list of all the databases currently situated on your account.

Find the database you want to delete and right-click on it.

3. Click Drop schema and confirm that you want to erase the database.

Select Drop schema from the context menu and confirm that you want to delete the database.

Deleting a Database In SPanel

SPanel, ScalaHosting’s all-in-one server management platform, gives you a suite of tools that simplify the complicated task of developing an online project. This obviously includes the utilities for creating, managing, and removing databases.

In light of this, it should be no surprise that erasing a database in SPanel is nice and simple.

1. Log in to SPanel’s User Interface.

First, you need to access the SPanel account that hosts the database. There are a couple of ways to do it.

You can log in via the Admin Interface. On the homepage, you’ll see a list of all the accounts on the server. Find the one you need, open the Actions menu, and click Manage.

SPanel will redirect you straight to the account’s User Interface.

Alternatively, if you have the user account’s login credentials, you can sign in at https://[the account’s domain name]/spanel/.

2. Go to MySQL databases and find the database you want to delete.

The MySQL databases section is accessible via the homepage of SPanel’s User Interface.

Once you open it, you’ll see a list of all existing databases below the database and user setup forms. SPanel displays 10 databases per page, so if you can’t find the one you’re looking for, you can go to the next page. There’s a handy search box, as well.

3. Delete the database.

If you wish to delete a single database, you can open the Actions drop-down menu next to it and select Drop Database.

You can also drop multiple databases at once by selecting the checkboxes next to them and clicking Delete Selected.

Before it proceeds, SPanel will ask you to confirm that you want to erase the database(s).

At the bottom of the page, you’ll see a list of existing MySQL user accounts, and you can easily remove the ones you don’t need. There’s a Delete button next to each of them, and like the databases, you can use the checkboxes to remove several accounts at once.

]]>
https://www.scalahosting.com/kb/how-to-delete-a-mysql-database/feed/ 0
How To Apply Activity Restrictions in Moodle https://www.scalahosting.com/kb/how-to-apply-activity-restrictions-in-moodle/ https://www.scalahosting.com/kb/how-to-apply-activity-restrictions-in-moodle/#respond Fri, 21 Oct 2022 15:41:47 +0000 https://www.scalahosting.com/kb/?p=5257 Any teacher will tell you that students must be guided to the right resources at the right time. Unfortunately, this is often tricky, especially online, where information is freely available.

Thankfully, the developers of Moodle, one of the world’s most popular Learning Management Systems (LMS), have implemented several mechanisms to limit access to course materials and help teachers stick to a well-structured curriculum.

Let’s have a look.

Restricting Access to an Entire Course

Moodle is suitable for anything from a small website run by a single school teacher to large e-learning projects with students from all over the world and educators specializing in different subjects. In both scenarios, the website owner needs to know who has access to what.

That’s why Moodle has user roles. As an administrator, you can go to Site administration > Users > Assign system roles and turn existing users into Managers and/or Course creators.

Both roles allow users to manage the lessons uploaded to the website. The difference is that while managers can control all courses, course creators can manage only the ones they participate in.

Managers and course creators can enroll users as Teachers, Non-editing teachers, and Students, so ultimately, they are the ones who grant and revoke access to the learning materials.

To enroll a new user in a course, open it (it will be available either on the homepage or in the My courses section) and go to the Participants tab.

From the Enroll users popup, you need to pick the user or users you’d like to enroll and select a role for them. Only enrolled users can access the materials in the course. However, the course itself remains visible to everyone. If you want to hide it, you can do so via its settings.

The Course visibility option is available during course setup. You can also find it later in the Settings tab.

Hidden courses are still visible to admins, managers, and teachers. However, students can’t access them, regardless of whether or not they’re enrolled. By hiding courses and restricting access to them, you can make a group of students follow a set curriculum. Often, however, you need to be a lot more flexible than that.

Restricting Access to Course Resources and Activities

As you probably know, Moodle courses are divided into topics. Course creators and teachers can add two types of materials to each topic – activities (like assignments, quizzes, surveys, etc.) or resources (books, files, pages, etc.).

The idea is to help users acquire new knowledge through the resources and then put it into practice via the activities. Everything has to happen in a set order, and sometimes, you need to grant access to materials according to specific criteria.

If you simply want to temporarily hide a specific course item from your students, you can do it in a couple of clicks. Log in to your account and ensure the Edit mode button in the top-right corner is enabled.

Find the course you want to modify (it’s available on the homepage, and if you’ve set it up yourself, you should also be able to find it under the My courses tab).

Locate the resource or item you’d like to hide, click the three-dot button next to it, and select Hide.

You can follow the exact same steps to unhide the item. If an activity or a resource is hidden, it becomes inaccessible to all students on the course. However, you can be even more flexible.

You may want the item to be visible to users who comply with a set of specific requirements while remaining hidden to everybody else. The resources you want to make available may also depend on the student’s grades. And sometimes, you may want to reveal a particular resource or activity at a specific date.

All these options (and more) are available in Moodle.

Only users with permission to edit the course can restrict access to resources and activities, so you need to be assigned as a manager, course creator, or teacher. Log in to your account and make sure Edit mode is enabled.

Go to the course you want to modify and locate the item you’d like to restrict. Click on its name to edit the activity or resource.

You need to open the Settings tab. Toward the bottom, you’ll find the Restrict access menu. Expand it and click Add restriction… to specify your criteria.

You’ll see five buttons giving you a range of options:

  • Activity completion – You can make the item appear only after a student has completed a specific activity. Its visibility may also depend on whether or not the student has received a passing grade.
  • Date – You can make the item appear on a predetermined date.
  • Grade – The students will have to receive a specific grade (either for an assignment or for the entire course) before they see the item.
  • User profile – You can make the item visible for a group of students only (e.g., based on their nationality).
  • Restriction set – You can specify a set of nested criteria that need to be fulfilled if the item is to become visible (e.g., it will be available only to US-based students that have above-average course total grades).

After setting the restrictions, you need to scroll down to the bottom of the page and save the changes. A checkbox also lets you notify all course participants with access to the item about the modification.

]]>
https://www.scalahosting.com/kb/how-to-apply-activity-restrictions-in-moodle/feed/ 0
Email Hosting for Multiple Domains https://www.scalahosting.com/kb/email-hosting-for-multiple-domains/ https://www.scalahosting.com/kb/email-hosting-for-multiple-domains/#respond Fri, 14 Oct 2022 07:23:20 +0000 https://www.scalahosting.com/kb/?p=5234 Whether you’re running a business or simply maintaining a personal blog, you’ll have a hard time convincing people to work with you if you use a generic Gmail account for your formal communication.

A branded email address is a must these days, and truth be told, getting it isn’t that much of a challenge. But what if you need multiple mailboxes associated with multiple domains?

Today, we’ll see whether that’s possible.

What Is Email Hosting for Multiple Domains?

Most web hosting accounts are suitable for hosting your website and all your emails simultaneously.

However, some users and businesses prefer to keep their mailboxes on a separate account. That’s why providers have developed email hosting plans.

From a user’s perspective, the differences between an email hosting plan and a regular package lie primarily in the range of available tools. With the former, you usually get fewer utilities, all revolving around email account management.

When it comes to setup, however, things are pretty similar. Just like regular hosting accounts, email-specific services can be situated either in a shared or dedicated environment.

Similarly to regular hosting plans, the price depends on the hardware resources and the usage limits your provider sets. When it comes to email hosting, these limits concern mainly the storage space and the number of mailboxes and domains you can host.

Usually, the cheapest mail hosting plans are limited to one domain only, while the more expensive packages can host the email accounts of several websites.

So, how do things stand at ScalaHosting?

Email Hosting for Multiple Domains at ScalaHosting

We have a total of four email hosting solutions:

  • StartUp – Starting at just under $3/month, this is the perfect starting point for any small business in the early stages of its development. With it, you get 50GB of storage and the ability to create up to 10 inboxes associated with a single domain.
  • SmallBiz – After you establish your brand, you may need to develop it further or maybe create offshoots to expand your reach. The SmallBiz plan, with 100GB of storage and up to 50 mailboxes associated with up to 5 domains, could be the service you need. Prices start at $3.95 per month.
  • Medium – As your business continues to grow, you’re going to need more resources. With the Medium plan, you can get them without breaking the bank. It gives you 150GB of storage with up to 100 mailboxes associated with up to 10 domains. Prices start at $5.95 per month.
  • Business – Unlike the solution we discussed so far, the Business plan provides you with an entire virtual private server (VPS) reserved especially for you. It comes with a dedicated IP, which minimizes the chances of getting blacklisted, and you don’t have any limits on the number of email accounts and domains you can use.

How Does It Work?

If you use a regular web hosting service, you need to ensure your domain’s nameservers are correctly set. However, things are more complicated if you want to host your website on one account and your emails on another.

You’ll most likely need to change the domain’s nameservers to make the website work. This creates a DNS zone on the site-hosting server. The DNS zone must be edited in order to direct your messages to the mail server.

More specifically, you need to update the domain’s MX records per your email hosting provider’s instructions. If you use SPanel, you can find the DNS editor under the Domains section on the User Interface’s homepage.

When you open the editor, you’ll see that the interface is quite user-friendly. You need to select the domain from the first drop-down menu. Enter it again into the Name field and choose MX from the Type menu. Finally, enter the MX record your email hosting provider has given you in the Value field.

If you have multiple domains on your email hosting account, you’ll need to reconfigure the DNS settings of all of them.

Who Would Need Email Hosting for Multiple Domains?

Keeping the website and the mailboxes on separate servers may seem odd, but the truth is, many people prefer that setup. Some do it for technical reasons, while others pick it to avoid service disruptions in case something happens to the website’s server.

There are quite a few cases when multiple domains are required, as well. For example, if you have branches abroad, you likely have several country-specific domains, and your staff probably want to use them for their emails.

Email hosting with multiple domains is also the perfect solution if you’re in charge of several projects and want to consolidate all mailboxes under a single account.

Setting Up Email Accounts Under Multiple Domains

Before creating any new mailboxes, you must ensure your domains are added to your account. While activating your new hosting service, you usually pick a primary domain. You can add additional ones later via your control panel. If you use SPanel, you need to log in to the User Interface and pick Domains from the homepage.

SPanel asks you to enter your new domain and pick a document root folder for it. If you don’t assign a document root yourself, SPanel will create one for you.

The Add Domain button saves the domain on your account, and you can move on to the next step.

Go back to the User Interface homepage and click Email Accounts.

You need to enter the account name and pick the domain from the drop-down. The menu contains all the domains and subdomains added to your account, and the search field can help you find the right one if the list is long and you don’t feel like scrolling through all the entries.

After you choose the address, you’ll need to pick a password and set the limit on the storage space the mailbox can use.

The Create Email button concludes the process.

]]>
https://www.scalahosting.com/kb/email-hosting-for-multiple-domains/feed/ 0
How to Create a Database in MySQL https://www.scalahosting.com/kb/how-to-create-a-database-in-mysql/ https://www.scalahosting.com/kb/how-to-create-a-database-in-mysql/#respond Wed, 12 Oct 2022 09:12:38 +0000 https://www.scalahosting.com/kb/?p=5201 Like many of the technologies we take for granted these days, MySQL was originally a small project run by a team of software engineers who wanted to create a database system for personal use.

However, over the years, its popularity has grown immensely, and we can now safely say that the internet would be a very different place without it.

The most popular content management systems, including WordPress, Joomla, Drupal, Magento, etc., use MySQL, and so do some of the planet’s top websites like Facebook, Twitter, Wikipedia, and YouTube. In other words, whatever website you’re building, you, too, probably need a MySQL database.

Today, we’ll show you how to create one.

How MySQL Works

MySQL is a relational database management system. A MySQL database stores information in tables, and users and web applications use the Structured Query Language (SQL) to retrieve the correct data from the correct table.

The database is an integral part of the operation of every dynamic website. It stores everything from your blog posts and articles to users’ personal information, passwords, purchases, etc.

For security reasons, MySQL databases aren’t freely accessible. In addition to the database, you also need a MySQL user account with privileges to read and modify the stored information. To minimize the risk of unauthorized access, every MySQL account has its own set of login credentials.

The web application that powers your website uses these credentials to retrieve information and display it on users’ screens.

Creating a MySQL Database via the Command Line

Traditionally, MySQL databases and user accounts are set up via the command-line interface (CLI). Today, we’ll show you not one, but two ways to do it.

In both cases, you first need to connect to your hosting account via SSH. You can use a dedicated client like PuTTY or your operating system’s built-in command-line tool. If you have an SPanel server, you can go straight to the SSH Terminal available in the User Interface.

The first method requires logging in to the MySQL server and executing SQL commands.

To create a new user and database, you’ll need an account with sufficient privileges. The command below shows you how to log in with the root account, but you can use any account with SYSTEM_USER privileges:

mysql -u root -p

After you provide the root account’s password, MySQL will sign you in and display the mysql> prompt.

From here on, you’ll use SQL commands. The syntax is not too complicated, but there are a couple of things you need to remember.

For readability purposes, SQL statements are usually written in uppercase letters, though they can also work if you don’t stick to this rule. What you do need to remember, however, is that every SQL command ends with a semicolon. If you forget it and press Enter, MySQL will interpret this as a new line.

Your first task is to create a MySQL user account. The command is:

CREATE USER ‘[the user’s username]’@’localhost’ IDENTIFIED BY ‘[the user’s password]’;

Don’t forget to use a strong password. The user account will have read/write permissions over the new database, so you must ensure it’s well protected.

Next, it’s time to set up the database itself. Here’s what you need to enter:

CREATE DATABASE [the new database’s name];

Finally, you have to give the user account permission to access the database and modify the information inside it. The command is:

GRANT ALL PRIVILEGES ON [the database’s name].* TO ‘[the user’s username]’@’localhost’;

The “.*” after the database’s name means that the user can modify all the tables in the database. If you want to give the user access to a specific table, you can add the name of the table after the dot.

With that, your database and MySQL user are ready to go. All you need to do is to configure your website to work with them. Another option to set up a database via the command line interface is through the mysqladmin binary.

Mysqladmin is a powerful database administration tool that gives you a quick and easy way to perform quite a few MySQL-related tasks, including:

  • Monitoring MySQL server processes
  • Flushing information logs, status variables, and tables
  • Reloading MySQL privileges
  • Setting and changing the root password
  • Killing running queries
  • Importing/exporting data files

As long as you have an account with SYSTEM_USER privileges, you can use mysqladmin to create a database without logging in to the MySQL server or executing any SQL queries.

After you connect to your hosting account via SSH, the syntax you’ll use is as follows:

$ mysqladmin -u [username] -p create [the name of the database]

So, if you use the root account to create a database called “newdatabase,” the command will look like this:

Note that this is not an SQL query so you don’t need a semicolon at the end.

Once you provide your MySQL account’s password, mysqladmin will create the database for you.

Creating a Database Using phpMyAdmin

If you’re not a fan of the command-line interface, you can set up a new MySQL database with phpMyAdmin – one of the most popular browser-based database administration platforms. It has an intuitive graphical user interface that is easy to get used to. At the same time, it provides you with more than enough tools to cover all your needs.

Its default login URL is https://[your server’s IP]/phpmyadmin, though you need to check with your host to see if they have changed it. Often, it’s accessible via your control panel, as well.

When it comes to creating a new database, phpMyAdmin gives you a few options. If you want to set up a new user account and database pair, you need to go to the User accounts tab and click Add user account.

On the next page, enter the new user’s details. You need to pick a username, a hostname (in most cases, you need to enter “localhost”), and a password.

In Database for user account section, select the Create database with same name and grant all privileges checkbox.

This checkbox saves you the time you would otherwise spend on setting up the database and the user account separately. Finally, scroll down to the bottom of the page and click Go. If you want to create a new database and give an existing user account access to it, the procedure is different.

From phpMyAdmin’s homepage, you need to open the Databases tab. Above the list of existing databases, you have the form for creating a new one. Pick the database’s name and collation and click the Create button to set it up.

The database will be created, and phpMyAdmin will automatically open it, so you can start creating tables and filling it with data. To grant an existing MySQL user access to it, go back to phpMyAdmin’s homepage and open the User Accounts tab. Find the user you want to modify on the list and click Edit privileges.

First, phpMyAdmin lets you access the user’s global privileges. The checkboxes you see at this point are useful if you want to give the user access to all your databases. However, if you want to restrict the account to a specific one, you need to click the Database button.

Select the new database from the list and click Go. If you hold down Ctrl or cmd, you can select multiple databases.

Click Go and set the account’s privileges. If you want the new user to have full access, click the Check all checkbox. Clicking the Go button completes the process.

With that, your database and MySQL user account are set up and configured.

Creating a MySQL Database With MySQL Workbench

MySQL Workbench is a free GUI-based tool for developing, maintaining, and administering MySQL databases. It’s available for Windows, Linux, and MacOS, and you can use it for both local development and remote administration.

Your first job is to connect to your hosting server via MySQL Workbench. Open the application and click the + button next to MySQL Connections.

There are quite a few fields in the dialog that appears, but filling them all in shouldn’t be a problem.

In Connection Name, enter a name that will help you differentiate between the different MySQL servers and user accounts you’ll use with Workbench. Make sure you enter something that tells you immediately what the connection is (e.g., “Root account on production server“).

From the Connection Method drop-down, it’s best to pick Standard TCP/IP over SSH, as it encrypts your connection and protects your data.

Enter your hosting server’s IP in the SSH Hostname field. If it uses a custom SSH port (one that is different from port 22), the IP must be followed by a colon and the port number. For example, because ScalaHosting’s managed SPanel servers use port 6543 for SSH connections, the address should look like this: xxx.xxx.xxx.xxx:6543.

The SSH Username is for the username you use to establish an SSH connection (e.g., your cPanel/SPanel account’s username).

Next, you need to pick the authentication method for your SSH user. If you click Store in Vault, you can save your account’s password in MySQL Workbench. Alternatively, if you have enabled SSH key authentication on your account, you can configure it via the next field. Unless you have some sort of custom configuration, you don’t need to touch the values in the MySQL Hostname and MySQL Server Port fields.

Finally, it’s time to set the login credentials for your MySQL user account. Once again, MySQL Workbench can save your password in its vault, so you don’t have to enter it every time you establish a connection.

With the form filled in, you can click Test Connection to make sure everything works. If it does, the OK button saves the new connection, and it becomes visible on MySQL Workbench’s homepage.

All you need to do to access your remote MySQL server now is to click on the connection.

In the Navigator section, you’ll see all databases your MySQL user has access to, and on the main toolbar, you’ll find the Create a new schema in the connected server button. In MySQL “schema” and “database” are treated as synonyms, so this is the button you need to use to set up a new database.

Choose a unique name for the database and enter it into its respective field. For most purposes, the default values in the Charset and Collation drop-down menus should work.

When you’re done, click Apply. A new dialog appears letting you add additional SQL scripting to your new database. As you can see from the screenshot below, you can create a database, set up a table, and fill it with data, all in one go.

After you click Apply, the database will appear in the Schemas tab under the Navigator section.

To create a user account and give it access to the new database, open the Administration tab and click Users and Privileges.

Click the Add Account button to set the new user’s username and login details.

Next, go to Schema Privileges, click Add Entry, and pick the option you need. You can grant the user account access to all databases, use it to edit schemas that match a specific pattern, or restrict the privileges to a single database.

Click OK and select the entry you just added. You’ll see the menu with the privileges you can grant the user. If you want the account to have full access to the database, select all of them and click Apply.

Creating a MySQL Database in SPanel

With SPanel, creating a MySQL database and user account takes no more than a couple of mouse clicks.

First, log in to SPanel’s User Interface. One way to do it is via the Admin Area. Find the account you want to modify on the homepage, open the Actions drop-down menu, and click the Manage button.

Alternatively, you can sign in with the user’s credentials at https://[the account’s domain]/spanel/.

Open the MySQL databases tool on the homepage of SPanel’s User Interface.

At the bottom of the page, you’ll find a list of existing databases and MySQL users created on the account.

If this is a brand new account, these lists should be empty. Above them, there are the database and user setup forms.

The only piece of information required for the creation of the database is its name. It can contain letters, numbers, and underscores, and you need to fill it into the db_name field.

At this point, if you click Submit, the database will be created, but there will be no MySQL users with access to it. To create a new user, you need to fill in the details in the Database User Setup section.

First, it’s the account’s username. You can pick any username that consists of letters, numbers, and underscores, though many prefer to use the database’s name. Unless you have a custom configuration, the IP/Hostname should be set to “localhost” – the default value.

Finally, you need to pick a password for the new MySQL user. Because it will protect your entire website, we’ve set a minimum password length of at least eight characters. For your convenience, we’ve also embedded a generator that creates a properly strong password, which you can copy and store for later use.

Last but not least, make sure the Grant the user access to the database checkbox is selected before clicking Submit. Otherwise, the new user won’t be able to read/write data in the database.

Clicking the Submit button sets up the database and the MySQL user account with the parameters you’ve just set.

]]>
https://www.scalahosting.com/kb/how-to-create-a-database-in-mysql/feed/ 0
Limiting Outbound Emails in SPanel https://www.scalahosting.com/kb/limiting-outbound-emails-in-spanel/ https://www.scalahosting.com/kb/limiting-outbound-emails-in-spanel/#respond Fri, 16 Sep 2022 08:12:31 +0000 https://www.scalahosting.com/kb/?p=5105 The first email was sent back in 1971, and yet right now, more than half a century later, we continue to use this form of communication every day. It’s especially important for website owners like you. You use it to contact potential and existing customers and send newsletters, service updates, password reset links, subscription expiration notifications, etc.

All of this is crucial for your project’s development. So, how do you ensure that your messages reach their intended destination? SPanel has a few tricks that could help.

First, though, let’s see what sort of problems website owners face.

Why Am I Experiencing Email Deliverability Issues?

Spam is a huge problem. Research suggests that it accounts for as much as 85% of all emails. This constitutes more than 120 billion unsolicited messages every day.

Unfortunately, the internet doesn’t have that many methods for keeping all that unwanted communication under control. In fact, one of the most efficient mechanisms for limiting the number of spam messages flying around is via the so-called remote block lists (RBL).

In simple terms, an RBL is a list of IP addresses that have sent spam emails. Providers use RBLs to determine which emails should be treated as legitimate and which should land in the junk folder or be discarded altogether. If your server’s IP ends up on one of the major RBLs, your recipients will almost certainly stop receiving your emails.

But why would your IP end up on a block list if you’re not sending the spam yourself?

Sometimes, honest mistakes could land you on one of the naughty lists. Failing to add an unsubscribe link to your newsletter, for example, is bound to be flagged, and you could get into trouble if you use email address lists you’ve bought online.

However, more often than not, it’s down to the sheer volume of outgoing emails. If too many messages are sent out from your IP in a short period of time, the address is bound to appear on most block lists within hours. Often, you’re not even the one to blame.

If you have a shared hosting plan, you use the same IP as hundreds of other people for your outbound emails. It only takes one spammer to put the IP on a block list and disrupt the communication of everyone on the shared server.

Even if you have your own IP, you’re not completely safe. You probably won’t be surprised to find that spammers don’t like to pay for their infrastructure. It’s much more financially viable to compromise someone else’s website or email account and use it instead. This is part of the reason why brute-force attacks are so common.

If they manage to break their way into your site or email account, attackers get the infrastructure to send out waves upon waves of junk mail. Eventually, they will get your IP blocked, but they’re not particularly bothered about it because they’ll just find another server to compromise and exploit.

From your perspective, it’s a different story.

Keeping the IP away from the blacklists is important not only for your email deliverability but also for your site’s SEO. Acting quickly is vital in such cases, but unfortunately, it’s sometimes impossible simply because you don’t know that your IP has been blocked.

That’s why we recently implemented IP reputation monitoring on all SPanel servers. The feature is available in the Admin Interface, and it’s visible as soon as you log in.

It checks whether your server’s IP is listed on the world’s five major RBLs – Spamhaus, SpamCop, Barracuda, SORBS, and JustSpam. If it is, SPanel will make sure you’re aware of it. That way, you can take action to remove the source of the spam, contact the RBL operator, and ask them to unblock the IP.

Of course, you would prefer not to get on the block lists in the first place. But how can you do that?

You can follow a few best practices when formatting your emails, so they don’t look suspicious. You have probably heard about them, and you surely know that you must always use strong passwords and only the latest versions of all software applications powering your website. However, this isn’t always enough.

As an SPanel user, you have our proprietary SShield security system and the built-in outbound email scanning functionality that alerts you whenever it detects suspicious activity. In addition, you can protect all admin and user accounts and webmail logins with two-factor authentication.

All that being said, the most effective way of keeping your IP address out of the spam blacklists is to limit the number of outgoing messages.

How to Limit the Number of Outgoing Emails on Your SPanel Server

SPanel’s sole purpose is to give you complete control over your virtual server. Restricting the volume of outgoing email communication and protecting your IP’s reputation is a significant part of this.

That’s why SPanel gives you not one but two ways of limiting the number of messages users can send. Let’s explore them.

Setting global outbound email limits

Every SPanel VPS has a global limit dictating how many emails a user can send in the span of sixty minutes. To manage it, log in to the Admin Interface and go to Server Settings. The limit is visible and can be edited from the Max hourly emails per user field.

Try to base the restriction on your experience. Check how many emails you usually send and use the number as a ballpark figure for your limit. If you do get blacklisted because of too many outgoing emails, try to re-think your communication strategy and re-schedule or skip some of the messages.

Don’t forget to click Apply to save the changes.

Setting individual outbound email limits

The global limit is a great way to protect your IP’s reputation. However, SPanel gives you yet more tools for controlling what users can and can’t do. For example, if you know that one of the accounts on the server hardly sends any emails at all, you can set a much lower limit.

Meanwhile, if another user operates a newsletter with a large number of subscribers, you can allow set the bar higher and let them communicate with more people.

By using the global and individual outbound email restrictions wisely, you can keep your IP away from the spam blacklists while also ensuring that users can grow their projects without worrying about rules and regulations hampering their progress.

You can set individual limits for both new and existing accounts.

During the account setup process, you’ll find the outbound email limit in the Disk Space Resources section located at the lower end of the page.

You can also add a limit as a part of a package.

If you want to update the outbound email restriction at a later stage, go to the homepage of SPanel’s Admin Interface, and open the Actions drop-down menu next to the account you want to modify.

The Change Limits option lets you modify all the resources available to the account, including the hourly limit for outbound emails.

Conclusion

A blocked IP can lead to a lot of missed communication and could have costly consequences for online businesses. Taking the necessary precautions to avoid it is essential, but it could sometimes be trickier than it seems.

The tools you need aren’t always available, and it’s often difficult to see how they could help. With SPanel, the entire process is about as straightforward as it could be.

FAQ

Q: Why am I experiencing email deliverability issues?

A: Problems related to your email service are usually either due to misconfiguration of your client application or because an RBL has blocked your server’s IP address. If the latter is true, you can ask the RBL operator to remove the IP from the list, but you first need to ensure no spam is being sent from your server.

Q: Why would my IP be blocked if I’m not sending any spam?

A: You should never eliminate the possibility of a successful cyberattack against a website or a mailbox hosted on your server. More often than not, this is the reason for the blacklisting, and if it turns out that this is the issue, timely actions are important not only to restore the normal functionality of your emails but also to protect the integrity of the projects hosted on the server.

Q: How can SPanel protect me from ending up on one of the RBLs?

A: SPanel has a number of security mechanisms to protect the websites and mailboxes hosted on your server. In addition to standard features like two-factor authentication, you get outbound email scanning functionality.

Last but not least, you have the facilities to limit the number of emails users send.

]]>
https://www.scalahosting.com/kb/limiting-outbound-emails-in-spanel/feed/ 0
Multi-User Logins in SPanel https://www.scalahosting.com/kb/multi-user-logins-in-spanel/ https://www.scalahosting.com/kb/multi-user-logins-in-spanel/#respond Mon, 12 Sep 2022 08:37:14 +0000 https://www.scalahosting.com/kb/?p=5085 SPanel is designed for projects of all shapes and sizes. It can help a couple of friends trying to launch a WordPress blog as a hobby, but it can also be instrumental in keeping an established online business on track.

But how does it do that?

By presenting users with unique solutions to problems other management platforms just can’t cope with. Today, we’ll show you one of them.

The Problem

Most websites are one-person projects in their initial stages of development. You always start small, but in the online world, things can change quickly. In no time, you may reach a point where you no longer have the capacity to do everything on your own

Your site has grown popular, and you need additional people to help you manage it. It’s a great problem to have, but this doesn’t make it any easier to solve.

After hiring the right people (a challenge in itself), you need to ensure everyone has the tools they need to do their job. This may be trickier than you think.

You could share your control panel login credentials with your team members, but there are many reasons why this may not be such a good idea. Here are just some of them.

For one, giving everyone access to the entire control panel will likely slow them down. Workers will spend more time looking for the tools they need, and they won’t be able to customize the interface without disrupting other team members’ work.

Furthermore, the more buttons they have, the more likely they are to click the wrong one. And because everyone uses the same credentials, finding out who did what would be an absolute nightmare.

The problems don’t end there. When one of your employees decides to quit, you’ll want to ensure they no longer have access to your control panel.

This means resetting the password and informing the rest of the team members. Even if you have a relatively small team, this is bound to frustrate both you and your colleagues.

All in all, sharing your control panel login credentials is hardly the most efficient way to manage an online project.

Fortunately, you won’t need to do it if you use an SPanel server.

SPanel’s Multi-User Login Feature

SPanel’s multi-user login feature is now available on every virtual server running our proprietary management platform. It can be useful for website owners who need to get more people on board, but it can also be beneficial for resellers and web development agencies that work on multiple projects alongside their clients.

It allows you to create individual admin and user accounts, so other users can log in to your server’s control panel. As a result, your partners, clients, contractors, and/or employees can all do their job without using your main SPanel login credentials.

Every new user and admin account has its own username and password, and its owner can even enable two-factor authentication. Crucially, you decide what sort of privileges every single user gets. You can give them full SPanel access, but you can also restrict some of the tools and features to ensure a smoother experience for the workers and better security for the server and the projects hosted on it.

Here are a couple of real-world examples showing you just how useful the feature can be.

Let’s say you’ve hired a project manager responsible for setting up and running new and existing websites hosted on your SPanel server. They need access to the Admin Interface to create and manage the SPanel accounts for individual projects. However, you probably don’t want to give them the freedom to change server settings.

Here’s another scenario – you head a web development agency, and you’ve built a website for one of your clients. They want access to the tools allowing them to manage their email accounts, which is a fair request, but you’d prefer it if they didn’t touch the site’s files and databases.

In both cases (as well as in many others), SPanel’s Multi-User Login feature is the perfect solution.

Setting Up a New SPanel Admin User

If you want to give another person access to SPanel’s Admin Interface, log in with your admin account and go to Manage Admin Users. The section is accessible from the menu on the left.

You’ll see a list of all admin accounts, and above it, there’s a Create Admin User button.

The button opens a popup that first asks for the new user’s login credentials. Note that every admin user must use an email address as a username.

The password must be at least 8 characters long, and you can use the built-in generator to create a truly random and strong password.

Next, you need to set the permissions for the new admin user. If you want them to have full access to SPanel’s Admin Interface, you can simply select the checkbox at the top and click Create Admin.

Alternatively, you can restrict access to individual parts of the Admin Area. 

Here’s a list of all options and how they’re grouped:

  • Server Management
    • View Admin Logs
    • Server Information
    • Server Status
    • Server Settings
    • Branding
    • Languages Manager
    • Packages
    • Manage API Tokens
    • Manage Admin Users
    • Resource Usage
    • Restart Service
    • Restart Server
  • Accounts Management
    • Manage Accounts
    • Create a New Account
    • List Suspended Accounts
    • Manage SSH Access
  • Software
    • Web Server Manager
    • Softaculous One Click Installer
  • SQL Services
    • Show MySQL Running Queries

After you configure the permissions for the new user, click the Create Admin button to complete the process. SPanel sets up the new user, and it appears on the list of admin accounts.

Next to each account, there’s an Actions drop-down menu. Through it, you can update its login credentials, enable and disable two-factor authentication, or edit its access levels. This menu also lets you delete admin users.

Setting Up a New SPanel Sub-User

If you want to have people help you with project-specific tasks, you can create sub-users inside SPanel’s User Interface. To do it, log in with your user account, and go to Manage Users.

The form for creating a new SPanel sub-user is at the top of the page.

Once again, you first have to pick the login credentials. Because you’re creating a sub-user profile, its username has a prefix that consists of the main account’s username followed by an understroke (e.g., if you want to set up a sub-user called “test” under an account with a username “user”, you’ll use “user_test”). As with the Admin user, the password must be no shorter than eight characters.

Directly below this form, you can decide what permissions the new user will have. The options represent every single tool on SPanel’s User Interface homepage.

Here’s the list:

  • Email
    • Email accounts
    • Forwarders
    • Mailroute
    • Default address
    • Webmail
    • Autoresponders
    • SpamAssassin
    • Email filters
  • Databases
    • MySQL databases
    • phpMyAdmin
  • Settings
    • View user logs
    • Manage users
    • Contact email
  • Domains
    • Domains
    • Subdomains
    • DNS editor
    • Redirects
  • Files
    • FTP accounts
    • Backup
    • Restore backup
    • File manager
    • Disk usage
  • Tools
    • SSL certificates
    • Cron jobs
    • PHP manager
    • PHP INI editor
    • Resource usage
    • Cloudflare
    • SShield
  • Software
    • WordPress manager
    • Joomla manager
    • NodeJS manager
    • Softaculous
    • Minecraft manager

After you set the privileges, you can click the Create button to set up the new user. In a second, the new account will be ready to go, and you will be able to log in to SPanel’s User Interface with its login credentials.

It will also appear on the list of existing users at the bottom of the Manage Users page. Using the Actions drop-down menu next to it, you can delete the account, change its password, edit the list of tools it has access to, or manage its two-factor authentication settings.

Conclusion

We know that delegating tasks among team members is crucial for the development of a successful online project. We know it partly because we have enough experience in this area and partly because the multi-user login feature has been highly requested by users of popular web hosting management solutions like cPanel.

At the moment, SPanel is one of the few platforms of this kind that has it out of the box and perhaps the only one that offers this kind of flexibility. For us, it represents just one of the many small steps in our quest to make SPanel one of the world’s best web hosting control panels.

Stay tuned if you want to learn more about the rest.

FAQ

Q: Is the Multi-User Login feature available for both the User Interface and the Admin Area?

A: Yes, it is. As a server owner, you can create as many admin users as you want, each with its own set of privileges. Similarly, account owners can set up sub-users with access to selected parts of SPanel’s interface.

Q: If I create an additional admin account or sub-user, will they get full SPanel access?

A: That’s up to you. You can give additional admin and user accounts full access to your SPanel server, but you can also restrict any part of the control panel you want. You are in full control of what they can access.

Q: Can multiple user/admin accounts be logged in to the same server at once?

A: Yes, each user/admin account has its own set of login credentials, and multiple people can work on the same project without interfering with one another.

]]>
https://www.scalahosting.com/kb/multi-user-logins-in-spanel/feed/ 0