DATA BASE ADMINISTRING DATABASE SERVICES IN RED HAT LINUX.
-
Upload
delilah-oneal -
Category
Documents
-
view
219 -
download
2
Transcript of DATA BASE ADMINISTRING DATABASE SERVICES IN RED HAT LINUX.
DATA BASE
ADMINISTRING DATABASE SERVICES IN RED HAT
LINUX
DATA BASE TYPES
MySQL
PostgreSQL
Responsibilities of a DBA
1. Installing & maintaining database servers Installing patches Upgrading softwares
2. Installing & maintaining database clients Installing & maintaining client programs
3. Maintaining accounts and users. Adding /deleting users from the database
4. Ensuring Database security Access control permissions
5. Ensuring data integrity Protects data changes and avoids duplication in multiple
users
FORMS OF DATABASE
1. Flat FilesSimple text files having Space Tab Other characters
Example: /etc/passwd
2. Relations The are also called RDBMSExample: Spreadsheets
FLAT FILES
LIMITATIONS/ DISADVANTAGES 1. Do not scale wellCannot perform random access on dataSearch line by line (only sequential access)
2. Unsuitable for multi user environments.Simultaneous changes by two users can lead to
overwriting
RDBMS
ADVANTAGES
Very good at finding relationships between data
Stores data in tables with fields which makes searching and sorting data easy.
SQL BASICS
Database languageVery similar to English and so it’s very simpleSQL statements have a defined structureEnd users are unaware of it
CREATING A TABLE IDEA
Different column types for dataSpecial column types e.g DATE , VAR,
VARCHAR etc..SQL commands are not case sensitiveWhitespace is generally ignoredSQL statement terminates with a semi colon
(;)
CREATING A TABLE . 1
CREATE TABLE phonebook(Last_name VARCHAR (25) NOT NULL,First_name VARCHAR (25) NOT NULL,Phone INT (20) NOT NULL);
INSERTING VALUES
INSERT INTO phonebook VALUES (‘Doe’, ‘John’, ‘555-555-1212’);
TABLE VIEW
Last_name First_name Phone
Doe John 555-555-1212
Doe Jane 555-666-1313
Pawl John 123-456-7890
Johnson Richard 111-222-3333
phonebook
DISPLAYING DATA
SELECT * FROM phonebook;SELECT first_name FROM phonebook;SELECT Last_name, Phone FROM
phonebook;SELECT CONCAT(First_name, “ ” ,
Last_name) AS Name FROM phonebook; Name
John Doe
Jane Doe
John Pawl
Richard Johnson
DISPLAYING DATA
SELECT * FROM phonebook WHERE first_name= “John”;
OPPOSITE
SELECT * FROM phonebook WHERE first_name!= “John”;
CHOOSING A DATABASE: MySQL V PostgreSQL
SPEED: MySQL is faster as compare to PostgreSQL. Queries are executed and results are
displayed faster Data Locking: PostgreSQL is better then MySQL MySQL locks the whole table when some
one is accessing a single field where as PostgreSQL just locks the raw which is currently being accessed, the rest whole table is open and unlock.
Locking table in MySQL and PostgreSQL
PostgreSQL
Last_name First_name Phone
Doe John 555-555-1212
Doe Jane 555-666-1313
Pawl John 123-456-7890
Johnson Richard 111-222-3333
PostgreSQL
MySQL
PostgreSQL IS ACID COMPLIANCE
Atomicity: If you have a power failure or server crash after an original record
has been deleted but before the updated one has been added , you done lose the record because atomic transaction ensure that the original record is not deleted unless and untill the new record is added.
new record to be added(before crash)
Record recovered Deleted old record before crash
PostgreSQL IS ACID COMPLIANCE
Consistency:
Incomplete transactions are rolled back to maintain consistency.
Isolation:
Ensures that multiple transactions operating on the same data are completely isolated from each other. Prevents data corruption if two users try to write to the same record . (locking )
Durability: If server crashed the database examines the log file and makes the changes accordingly .
Procedural Languagesor
imperative language
PostgreSQL , C++, JAVA , SQL
Programming Languages
PHP, Pearl, Visual Basic
Installing and configuring MySQL
Two ways for installing and configuring1- Source Version 2- Binary RPM (MySQL-server and MySQL-client)
i- Install it by rpm –i command.
ii- Initialize the grand tables by mysql_install_db command as root user.
iii- Go to mysql environment by typing mysql command . iv- Setting a password for MySQL root user by mysql> SET
PASSWORD FOR root = PASSWORD (“secretword”); command inside mysql environment.
v- type exit command to exit mysql environment . NOTE: Once installed through RPM , necessary user and group
is created automatically by the name MySQL .
Creating a database in MySQL
mysql> CREATE DATABASE animal; OR mysqladmin –u root –p create animals
Granting and Taking away Privileges in MySQL
GRANT ALL ON animals.* TO usman IDENTIFIED BY ‘usman123’;
REVOKE ALL on animals FROM usman; Database User
Database All table User Password
Installing and configuring PostgreSQL
Two ways for installing and configuring1- Source Version 2- Binary RPM (postgresql, postgresql-server and postgresql-libs)
i- Install it by rpm –i command.
ii- Create the data directory by mkdir /usr/local/pgsql command as root user. iii- Then change the user ownership of data directory to postgres user by typing chown
postgres /use/local/pgsql command as root user. iv- Then change the group ownership of data directory to postgres group by typing chgrp
postgres /use/local/pgsql command as root user . v- Then change your self to a postgres user by the command su- postgres in order to initialize the data directories. vi- To initialize give the command initdb –D /user/local/pgsql/data . vii- Now start the database server by the command /usr/bin/postmaster –D
/usr/local/pgsql/data OR /usr/bin/pg_ctl -D /usr/local/pgsql/data –l logfile start viii- At the end issue the command postmaster –D /usr/local/pgsql/data & NOTE: Once installed through RPM , necessary user and group is created automatically
by the name postgres .
Creating a database in PostgreSQL
CREATE DATABASE animal;
OR createdb animals
Creating a database user in PostgreSQL
CREATE USER usman; OR createuser usman
Deleting a database user in PostgreSQL
DROP USER usman; OR dropuser usman
Granting and Taking away Privilages in PostgreSQL
GRANT ALL ON animals TO usman ;
REVOKE ALL on animals FROM usman; Database User
Database User
Database clients
User Database Client Database Server
Database clients model 1
User Database Client Database Server
Your local host Remote host
Database clients model 2
User Database Client Database Server
Your local host Remote host 1 Remote host 2
Database clients model 3
UserWeb Browser
Database Client Web Server
Database Server
Your local host Remote host 1 Remote host 2
Changing a database and getting help
mysql> help;
mysql> use animals; database name