Microsoft Azure lets you economically and quickly host enterprise quality SQL Server databases in the cloud. The cost of each database is relatively modest.
Managing Resources and Costs for Individual Databases
However, as you add more databases, larger databases, and/or databases that require more resources, costs increase. Providing more resources to a database is helpful when it demands it, but when users aren’t on it or during non-business hours, it may be wasted capacity. Even during business hours, one can have some databases being utilized more than others at unpredictable levels.
Pooled Resources Across Multiple Databases
Fortunately, Azure offers an Elastic Pool option to share resources across multiple databases. If the demand on your databases is inconsistent (spiky), you can provide a high level of capacity that’s available to the most demanding database while allowing other databases to share those abundant resources when needed.
You no longer need to set the limits of each database,
You are not charged a per database monthly fee which is great for supporting lightly used databases.
Migrating Existing SQL Server Databases to Elastic Pool
Microsoft provides information on SQL Elastic Pools but does not explain how to convert existing databases to an Elastic Pool.
FMS President Luke Chung wrote a new paper with step-by-step instructions on how to convert existing SQL Server databases on Azure to an Elastic Pool without the need to change the database connection strings:
Hannity traveled to London to interview Julian Assange at the Ecuadorian Embassy where he’s seeking asylum. They discussed an overview of Assange’s role as founder of WikiLeaks, and their obtaining and publishing the emails from the Democratic National Committee the weeks before the US Presidential election. Some people attribute Hillary Clinton’s loss to the revelations in those emails especially from John Podesta, the former White House Chief of Staff and Chairman of the Clinton campaign. They are also accusing the Russians for hacking (stealing) and providing the data to Assange so Donald Trump could win the election.
On January 4, 2017, I was on the radio show with Sean Hannity and Brigadier General Eli Ben Meir, former Israeli Military Intelligence chief. The three of us discussed the WikiLeaks disclosures. I commented specifically on:
Cyber attacks and the security breach at OPM disclosed non-classified government employees and by omission who were covert at American Embassies globally.
Noting Julian Assange’s careful word choices to exclude Russia as source without excluding them as the ultimate source of his sources.
The need for WikiLeaks’ to keep their sources confidential and how they amplified the data from Bradley Manning and Edward Snowden.
Different approaches to preventing cyber attacks depending on the cause. “It’s one thing when someone steals your car because they broke into it. It’s another thing when someone steals your car because you left your keys in the ignition.”
Here’s the audio of the show:
My segment starts at the 6:50 mark. Sean and General Meir speak first, then I start around 9:25. Final comments at 14:15 and it wraps up by 14:50.
Only a limited amount of information can be discussed in such a short interview. Some additional issues to consider are:
Securing data over the internet and inside organizations is very challenging. Threats may come from:
External hacks that need to be monitored and defeated
Internal people who unintentionally leave the front door unlocked
Internal people who intentionally leak information
Different solutions are required for each type of threat. Some are at the software vendor, design, and developer level, while others involve end-user training, background checks, and monitoring.
Applications can be built so that simply disclosing a user name and password doesn’t compromise the whole system by require two-factor authentication and registering devices that can use those credentials.
Unfortunately, many systems were built well before today’s cyber threats existed. The cost of making those systems more secure without breaking their existing functionality will be daunting and expensive. In many cases, the original source code, development environment and/or vendor are long gone, so the only option is to replace them which is also very expensive and time consuming.
Julian Assange and WikiLeaks are Not Heroes
We need to keep in mind that the WikiLeaks exposed top secret US information by publishing the disclosures from Manning and Snowden. Lives were put at risk and lives may have been lost because of those publications. The Arab Spring was inflamed in part by the disclosure of diplomatic communications and one could argue the human tragedy in Syria is tied to this as well. While Republicans are celebrating and defending Assange and WikiLeaks now for the DNC emails, the tables may turn very quickly.
Data That’s Not Exposed May be More Dangerous
While many are focused on the DNC emails, it’s not unreasonable to assume the people who hacked that also got the RNC emails. Data can be power, and in the wrong hands, data can be used for nefarious purposes such as blackmail.
If the RNC data were compromised, we should be extremely worried if the hackers discovered it was more valuable to keep private than public. Whether they use it directly or sell it to another party or country, the information can make victims puppets by threatening the exposure of their personal data. It’s not uncommon during E-discovery of an email server to discover all sorts of inappropriate language, behavior and activity conducted by individuals in an organization. Disclosures of affairs, homosexual activity, underage sex, bribery, unethical business dealings, breeches of confidentiality, collusion, and actual crimes are often found in email threads and can be used for blackmail.
Total Access Startup makes it easy to centrally manage all your Microsoft Access database deployments. Ensure that all your users run the latest version of your database application with the right version of MS Access. Easily deploy updates without having to manually change things on each user’s PC. Simply point your users to a shortcut and they never need to know the actual name of the database.
Total Access Startup 2016 is now shipping to let you:
For optimal performance, deploy a local copy of your master database on each user’s PC and keep it updated when you update the master
Run it with a specific Access version or a range of allowable Access versions. This makes it easy to support legacy versions of Access even if users install later versions of Office/Access.
Specify the bitness (32 and/or 64-bit) that are allowed for Access 2010, 2013, and 2016.
Display a professional splash screen graphic while your database loads
If your users can’t launch your database, a message appears with information you provide to contact you. You can customize our messages or translate them to your user’s language.
Microsoft Office 365 is Microsoft’s new and popular way to license the Office products for online and desktop use. It also includes hosted Exchange for email, SharePoint, OneDrive for shared hard disk files, and the communications package Lync. The cloud based platform means Microsoft takes care of the system administration to update versions, apply security patches, monitor usage, ensure uptime and connectivity, and address hardware problems.
Let Microsoft Take Care of Exchange and Email
If you are still hosting your own Exchange Server in your facility, it’s time to consider outsourcing so Microsoft can worry about the versions, patches, hardware failures, and other maintenance chores. Microsoft will also host it in a real data center with reliable power sources, battery backups, multiple internet trunk lines, and enterprise quality physical security.
If you’re already outsourcing your email/Exchange hosting, Office365 is a wonderful alternative and lets Microsoft deal with the challenges of keeping email up and running 24/7/365.
Includes Desktop Copies of Microsoft Office
If an option includes the Windows copies of Office, you can install on your local machine Office 2013 copies of Microsoft Access, Excel, OneNote, Outlook, PowerPoint, Publisher, Word, Lync, and InfoPath. This lets you have both the online versions of Office and the traditional non-Internet dependent local copy.
Office 365 with SharePoint and Access Web Apps with SQL Azure
With Office 365, the hassles of hosting and maintaining your own SharePoint site is gone. Microsoft takes care of that for you and lets you create both private and public web sites.
You can also enable Access Web Apps to create simple database solutions with data automatically hosted in SQL Server (SQL Azure). The data can also be shared with other applications such as the desktop version of Microsoft Access.
Office 365 Options
There are many options based on your situation:
Business Plans with special pricing for Small Businesses (< 25 users), Midsize (< 300 users) and Enterprise (unlimited)
Non-Profit Plans (Microsoft offers free licenses to qualified 501c(3) organizations)
Office Pro Plus Trial – 25 licenses (Details)
This is the traditional Office on the desktop without the online services. Rather than buying the licenses upfront, Microsoft now offers the ability to pay for it on a monthly basis for $12 and install it on up to 5 machines.
Trial for Microsoft Dynamics
We are also pleased to extend Microsoft’s trial offer for their Dynamics CRM system
Don’t Forget System Administration for Microsoft Access Database Solutions
A professional Microsoft Access database application needs ongoing system administration. It’s an area that many MS Access developers neglect and causes problems when things go wrong (database corruption, missing backups, disaster recovery, etc.):
Enterprise Quality System Administration with Audit Logs and Email Alerts
Total Visual Agent has provided an Enterprise Quality solution for almost 20 years by giving organizations a reliable way to perform their critical tasks on a 24/7, 365 days a year basis. A detailed audit log documents each action that is performed, and sends emails if errors are encountered.
Schedule Events, Databases, and Actions to Perform
Total Visual Agent automates and schedules Microsoft Access tasks. It ensures repetitive tasks are completed reliably. Tasks such as database compact and repair, zipped backups, rolling backups (e.g. 7 copies for each day of the week), running macros, running Windows command lines, making copies of table data, collecting database statistics such as size and record counts, etc. Easily schedule tasks for the middle of the night and know they’ll be completed.
Events can be scheduled every X minutes, hourly, daily, weekly, monthly or just one time. You can specify the days of week and time periods that it runs to limit processing to off-hours. Select the databases and directories (including subdirectories) to manage with support for workgroup security and database passwords.
Includes a Windows Service for Secure Processing and Reliability
Once defined, the events and tasks can be run by our Monitor program that is a standard Windows program.
Alternatively, Total Visual Agent includes a Windows Service, so you can run your tasks without having anyone logged on the machine. The Windows service is a more secure, robust solution since it can automatically restart if the machine reboots.
New Features in the 2013 Version
A huge number of new features were added in this 2013 release from the previous 2007 version:
Support for Microsoft Access 2013 and 2010, plus 2007
Support for 64 bit Operating Systems
Simplified Startup and Easier Management of Multiple Microsoft Access Versions
Import Settings from Multiple Versions of Total Visual Agent
Test All Actions for an Event, Database, Directory or Task Group
Create Events that Run Every X Minutes
Create Events that are Limited to Periods Spanning Midnight
Process Directories with Managed Databases
Data Extract Tables are Keyed
Run Macros for Database Password Protected Databases
Pause for a Fractional Minute
Compressed Archive File Names Support Multiple Extensions
More Detailed Activity History Log with Deletions
More Detailed Database Statistics with Deletions
Add Your Comments to Events, Directories, and Actions
One of the challenges most organizations face is how to coordinate communications and tasks among team members and external contacts. With multiple people and clients/projects, emails fly in many directions. People with vital information may be unreachable while customers may be providing information to someone in your organization while others who need that information are oblivious. When someone leaves a team or organization, much of their information is lost.
Over the years, we've helped several clients better manage their emails and treat them like a database. We've built solutions that work with Exchange and Outlook to automatically classify contacts, tag emails, and store the information in a Microsoft SQL Server database. The data is presented through a Microsoft Outlook add-in showing all communications with a contact's firm when you create or respond to an email. The data can also be displayed in the Facebook like interface to make it easy for everyone on your team to know what's going on.
There's no longer a need to look in someone else's Inbox since information is immediately shared between everyone who needs to know (even before the recipient opens their message). Searching for messages is quick and easy, and corporate document retention policies can be enforced.
We are very pleased to announce the creation of our new (and free) Microsoft Access Developer Help Center. It contains our many popular papers with tips and techniques for becoming a better Microsoft Access developer, programmer, and administrator. It covers the whole life cycle from strategic planning of how MS Access fits, database and table design, form and report tips, programming do's and don'ts, deployment, best practices, performance tips, etc.
Many people deploy Microsoft Access database applications and neglect to provide the system administration necessary to properly support and maintain them over time. This becomes critical as the data it contains grows and becomes mission critical. Often, when something goes wrong, IT “professionals” are brought in to discover basic system administration are not in place. Rather than blaming the people involved, the Microsoft Access technology is considered at fault. We can do better.
Here’s a response I recently provided related to this issue:
Second, Access/Jet databases need to be periodically compacted to minimize corruption and bloat, and for optimal performance. The back-end database with the data is what needs to be compacted. You can do that manually. We created a commercial program Total Visual Agent: that does it on a schedule with auditing and email notification if something goes wrong.
Third, if you are experiencing corruption after regular database maintenance, it’s often caused by a suspect connection/user who disconnects in an improper manner. That can be very difficult to detect and replicate. We have a commercial product, Total Access Admin, that monitors the people going in and out of an Access database, logs that activity, and flags the people who exit improperly. If it’s happening with the same person, there may be a hardware or network problem causing the corruption.
Finally, it may be possible that the corruption and performance problems are due to the front-end application. Bad code and techniques, corrupt objects, and other issues may be causing crashes and problems that lead to corruption. We address this in a few ways:
We implement global error handling that records crashes by users to text files so we have evidence of what failed. In addition to the procedure call stack, current procedure, error number and description, we also want the line number: http://www.fmsinc.com/free/NewTips/VBA/ErrorHandling/LineNumber.html This makes it significantly easier and quicker to reproduce and fix bugs.
Overall, it’s about having a solid and repeatable process and checklist in place that evolves over time as new experiences are encountered.
The article covers our experiences working with people running small to medium sized organizations, and the challenges they face to address business process continuation issues. An overview of the basic steps are covered.
As someone running a small organization, it’s easy to be consumed by day-to-day needs and neglect the importance of disaster recovery. Not only is it awful to think about, it requires detailed planning and thought to implement properly. Over the years, we’ve seen organizations run into problems because of inadequate planning and testing, so here are some pointers we’ve learned.
Unfortunately, bad things happen. You may have business insurance to pay for replacing your hardware, but for most organizations the value is in the data. Customer lists and purchase histories, accounting, inventory, operational reports and processes, management decision making systems, and even simple Word and Excel files can be critical to the success of your organization. Making sure these are accessible in the event of an emergency is worth considering before a disaster strikes.
Disasters can be on many levels. Certainly, there’s the chance of your whole building burning down but the more common situation is hardware failure or human error. All hardware eventually dies and a hard disk containing critical corporate information could just fail. Similarly, someone could make a mistake and accidentally delete data or files that need to be recovered. It may not threaten the whole organization but could be expensive and time consuming to recover.
What’s the Maximum Number of Microsoft Access Users?
There is a persistent myth that Microsoft Access Jet databases can only support 20 or so users. Here’s my response to a recent inquiry:
I flatly refute any suggestions that Microsoft Access users are limited to around 30. We’ve run many tests and have never seen that kind of degradation in performance. It is a myth from Access 2.0 days that was eliminated with Access 97 almost two decades ago.
A poorly designed Access database won’t support two users, but a well designed Access solution can support hundreds of users. Of course, what matters is the number of simultaneous users, and what they’re doing.
At Least 200 Simultaneous Microsoft Access Users on an Access/Jet Database
If everyone is just viewing data or entering data into a table, that takes very little work and a large number of people (well over 200) can be supported. People cannot type faster than what Access can handle. If users are all running massive reports and queries with data updates, that can still be done but performance would be an issue which applies to any technology, so testing and optimization would be necessary.
Migrate Back-End Access Database to Microsoft SQL Server for More Users
If the back-end database is in SQL Server rather than an Access/Jet database, the number of users can be practically unlimited if each user has their own front-end copy of the Access application. Performance issues still apply based on what they are doing. In some cases SQL Server is slower than Access, so it is important to understand the situation before thinking SQL Server is the answer.
All that said, any Access application that is distributed to others with shared data should be a split database design. Here are a few resources we’ve written:
Simplify Support for All the Users of Your Access Databases
We offer a commercial product for enterprises, Total Access Startup, that helps with the distribution of databases to each user’s desktop, and launching it with the right version of Microsoft Access.
This allows you to centrally support a large number of Access users across your network and ensure everyone is using the latest version of your application. It also simplifies the migration from one version of Access to another.