Unit 4-DBMS
Unit 4-DBMS
Unit 4-DBMS
● Full database backup – In this full database including data and database, Meta
information needed to restore the whole database, including full-text catalogs are
backed up in a predefined time series.
● Differential backup – It stores only the data changes that have occurred since the
last full database backup. When some data has changed many times since last full
database backup, a differential backup stores the most recent version of the
changed data. For this first, we need to restore a full database backup.
● Transaction log backup – In this, all events that have occurred in the database,
like a record of every single statement executed is backed up. It is the backup of
transaction log entries and contains all transactions that had happened to the
database. Through this, the database can be recovered to a specific point in time. It
is even possible to perform a backup from a transaction log if the data files are
destroyed and not even a single committed transaction is lost.
Database Security
Security of databases refers to the array of controls, tools, and procedures designed to ensure
and safeguard confidentiality, integrity, and accessibility. This tutorial will concentrate on
confidentiality because it's a component that is most at risk in data security breaches.
Security for databases must cover and safeguard the following aspects:
o Physical database servers or the database server virtual, and the hardware that runs it.
o The infrastructure for computing or network that is used to connect to the database.
Security of databases is a complicated and challenging task that requires all aspects of
security practices and technologies. This is inherently at odds with the accessibility of
databases. The more usable and accessible the database is, the more susceptible we are to
threats from security. The more vulnerable it is to attacks and threats, the more difficult it is
to access and utilize.
According to the definition, a data breach refers to a breach of data integrity in databases. The
amount of damage an incident like a data breach can cause our business is contingent on
various consequences or elements.
o Intellectual property that is compromised: Our intellectual property--trade secrets,
inventions, or proprietary methods -- could be vital for our ability to maintain an
advantage in our industry. If our intellectual property has been stolen or disclosed and
our competitive advantage is lost, it could be difficult to keep or recover.
o The damage to our brand's reputation: Customers or partners may not want to
purchase goods or services from us (or deal with our business) If they do not feel they
can trust our company to protect their data or their own.
o The concept of business continuity (or lack of it): Some businesses cannot continue
to function until a breach has been resolved.
o Penalties or fines to be paid for not complying: The cost of not complying with
international regulations like the Sarbanes-Oxley Act (SAO) or Payment Card
Industry Data Security Standard (PCI DSS) specific to industry regulations on data
privacy, like HIPAA or regional privacy laws like the European Union's General Data
Protection Regulation (GDPR) could be a major problem with fines in worst cases in
excess of many million dollars for each violation.
o Costs for repairing breaches and notifying consumers about them: Alongside
notifying customers of a breach, the company that has been breached is required to
cover the investigation and forensic services such as crisis management, triage repairs
to the affected systems, and much more.
Insider Dangers
An insider threat can be an attack on security from any three sources having an access
privilege to the database.
o An insider who is negligent and makes mistakes that expose the database to attack.
vulnerable to attacks
o An infiltrator is an outsider who acquires credentials by using a method like phishing
or accessing the database of credential information in the database itself.
Insider dangers are among the most frequent sources of security breaches to databases. They
often occur as a consequence of the inability of employees to have access to privileged user
credentials.
Human Error
The unintentional mistakes, weak passwords or sharing passwords, and other negligent or
uninformed behaviours of users remain the root causes of almost half (49 percent) of all data
security breaches.
Hackers earn their money by identifying and exploiting vulnerabilities in software such as
databases management software. The major database software companies and open-source
databases management platforms release regular security patches to fix these weaknesses.
However, failing to implement the patches on time could increase the risk of being hacked.
A specific threat to databases is the infusing of untrue SQL as well as other non-SQL string
attacks in queries for databases delivered by web-based apps and HTTP headers. Companies
that do not follow the safe coding practices for web applications and conduct regular
vulnerability tests are susceptible to attacks using these.
Buffer overflow happens when a program seeks to copy more data into the memory block
with a certain length than it can accommodate. The attackers may make use of the extra data,
which is stored in adjacent memory addresses, to establish a basis for they can begin attacks.
In a denial-of-service (DoS) attack in which the attacker overwhelms the targeted server -- in
this case, the database server with such a large volume of requests that the server is unable to
meet no longer legitimate requests made by actual users. In most cases, the server is unstable
or even fails to function.
Malware
Attacks on Backups
Companies that do not protect backup data using the same rigorous controls employed to
protect databases themselves are at risk of cyberattacks on backups.
As databases are almost always accessible via the network, any security risk to any
component or part of the infrastructure can threaten the database. Likewise, any security
attack that impacts a device or workstation could endanger the database. Therefore, security
for databases must go beyond the limits of the database.
In evaluating the security of databases in our workplace to determine our organization's top
priorities, look at each of these areas.
o Security for physical security: If the database servers are on-premises or the cloud
data centre, they should be placed in a secure, controlled climate. (If our server for
database is located in a cloud-based data centre, the cloud provider will handle the
security on our behalf.)
o Access to the network and administrative restrictions: The practical minimum
number of users granted access to the database and their access rights should be
restricted to the minimum level required to fulfil their tasks. Additionally, access to
the network is limited to the minimum permissions needed.
o End security of the user account or device: Be aware of who has access to the
database and when and how data is used. Monitoring tools for data can notify you of
data-related activities that are uncommon or seem to be dangerous. Any device that
connects to the network hosting the database must be physically secured (in the sole
control of the appropriate person) and be subject to security checks throughout the
day.
o Security: ALL data--including data stored in databases, as well as credential
information should be secured using the highest-quality encryption when in storage
and while in transport. All encryption keys must be used in accordance with the best
practices guidelines.
o Security of databases using software: Always use the most current version of our
software to manage databases and apply any patches immediately after they're
released.
o Security for web server applications and websites: Any application or web server
that connects to the database could be a target and should be subjected to periodic
security testing and best practices management.
o Security of backups: All backups, images, or copies of the database should have the
identical (or equally rigorous) security procedures as the database itself.
o Auditing: Audits of security standards for databases should be conducted every few
months. Record all the logins on the server as well as the operating system. Also,
record any operations that are made on sensitive data, too.
Data protection tools and platforms
Today, a variety of companies provide data protection platforms and tools. A comprehensive
solution should have all of the following features:
Distributed databases
A distributed database is basically a database that is not limited to one system, it is spread
over different sites, i.e, on multiple computers or over a network of computers. A distributed
database system is located on various sites that don’t share physical components. This may be
required when a particular database needs to be accessed by various users globally. It needs
to be managed such that for the users it looks like one single database.
Types of Distributed Databases
In a homogeneous distributed database, all the sites use identical DBMS and operating
systems. Its properties are −
This is a two-level architecture where the functionality is divided into servers and clients. The
server functions primarily encompass data management, query processing, optimization and
transaction management. Client functions include mainly user interface. However, they have
some functions like consistency checking and transaction management.
In these systems, each peer acts both as a client and a server for imparting database services.
The peers share their resource with other peers and co-ordinate their activities.
The distribution design alternatives for the tables in a DDBMS are as follows −
In this design alternative, different tables are placed at different sites. Data is placed so that it
is at a close proximity to the site where it is used most. It is most suitable for database
systems where the percentage of queries needed to join information in tables placed at
different sites is low. If an appropriate distribution strategy is adopted, then this design
alternative helps to reduce the communication cost during data processing.
Fully Replicated
In this design alternative, at each site, one copy of all the database tables is stored. Since,
each site has its own copy of the entire database, queries are very fast requiring negligible
communication cost. On the contrary, the massive redundancy in data requires huge cost
during update operations. Hence, this is suitable for systems where a large number of queries
is required to be handled whereas the number of database updates is low.
Partially Replicated
Copies of tables or portions of tables are stored at different sites. The distribution of the
tables is done in accordance to the frequency of access. This takes into consideration the fact
that the frequency of accessing the tables vary considerably from site to site. The number of
copies of the tables (or portions) depends on how frequently the access queries execute and
the site which generate the access queries.
Fragmented
In this design, a table is divided into two or more pieces referred to as fragments or partitions,
and each fragment can be stored at different sites. This considers the fact that it seldom
happens that all data stored in a table is required at a given site. Moreover, fragmentation
increases parallelism and provides better disaster recovery. Here, there is only one copy of
each fragment in the system, i.e. no redundant data.
The three fragmentation techniques are −
● Vertical fragmentation
● Horizontal fragmentation
● Hybrid fragmentation
Mixed Distribution
This is a combination of fragmentation and partial replications. Here, the tables are initially
fragmented in any form (horizontal or vertical), and then these fragments are partially
replicated across the different sites according to the frequency of accessing the fragments.