Friday, February 26, 2010

JPEG Recovery 4.0


JPEG Recovery is a handy tool to repair corrupted JPEG picture or photo 
which is restored by a photo or data recovery software. JPEG Recovery 
supports combining 2 JPEG pictures for recovery, just in case the original 
picture was split into 2 files by the photo or data recovery software. 
Version 4.0 improves detection and handling on corrupted JPEG data and fixes some bugs.
What's new in this version:
Version 4.0 improves detection and handling on corrupted JPEG data and fixes some bugs.



Thursday, February 25, 2010

IndiMail

IndiMail

IndiMail is a mailing solution built using following packages qmail, serialmail, qmailanalog, dotforward, fastforward, mess822, daemontools, ucspi-tcp, Courier IMAP/POP3, Bogofilter - A Bayesian Spam Filter, Fetchmail, other useful utilities (pack, unpack, altermime, ripmime, flash). IndiMail also provides Management of Virtual domains. Lot of the integration has been done by modifying some of the core components. IndiMail works on 32 / 64 bit Unix platforms.
The power of IndiMail lies in the ability to distribute the users across multiple hosts in a non-proprietary, simple way. You can have multiple hosts hosting a domain placed anywhere and tied up by IndiMail. This allows you to migrate seamlessly from a proprietary solution like Lotus Notes or MS Exchange to IndiMail. Just install the proxy IMAP/POP3 and point the MX record to IndiMail.
Though IndiMail uses the power of qmail, it has multiple queues (called a queue collection). The collection allows IndiMail to process a very high incoming rate of mails. The system ids, configuration files used by IndiMail are all configurable through a set of environment variables. This gives the ability of a single installation of IndiMail have a different behavior for each queue, sender, recipient, source host, destination host.
Download

SQLTools for Oracle

SQLTools for Oracle

SQLTools is a light weighted and robust tool for ORACLE database development. It includes a text editor, an sql console and a couple of sql utilities. You can use it for dial-up connection and it will work as fast as SQLPlus. It is small and not required an installation so SQLTools will help you anywhere because it is small enough for floppy and available for downloading on the Web. SQLTools is free and probably going to be a public source project.
SQLTools is:
  • Powerful editor (actually it'll be more powerful in the next release), which supports drag & drop, syntax highlighting, code template expansion, etc. It is possible to find a database object under cursor and get its description. Context sensitive help provides information about the current sql statement.
  • SQL console, which is embedded in the editor. It supports DML & DDL statements and provides additional information about database statistics and timing.
  • Object Browser is designed for getting any object DDL definition. One of useful features is support group operations, for example, you can select and disable a set of constraints in one operation.
  • Extract Schema utility, which loads all objects definition and stores on local disk.
Download

Wednesday, February 24, 2010

IP Multicasting

IP Multicasting is a technique of distributing the data across multiple servers over the WAN.  It is simply the delivery of the same data packets to the multiple destinations.  It allows the multiple recipients to receive the same data packets from a single source. Multicasting allows the distributed applications to work over the WAN with great performance.  It is an excellent alternative for the unicast and broadcast transmissions.


In Multicasting, the information is sent to only the destined recipients.   It is like the TV or radio transmission system in which only those terminals receive the information who have tuned themselves to receive it.
It is the bandwidth-conserving technology that reduces the traffic load over the network.  The ideal applications that uses the multicast technology includes video conferencing, stock quotes, distance learning, weather updates, video streaming, news and other distributed software applications in the LAN/WAN network.  IP multicasting mechanisms depends upon the two protocols i.e. group management protocol and the routing protocols.

Group Management protocols establish the multicast groups and the routing protocols routes the traffic to the destination. Multicast routing protocols makes the distribution tree for the data forwarding in the network. It is an ideal solution for the distribution applications in the TCP/IP based LAN/WAN networks.


Though it has been successful in many businesses but it is not extensively deployed and used by the average users.  Special addressing scheme is assigned while implementing the IP multicasting.  These addresses are assigned from the Class D i.e. 224.0.0.0 to 239.255.255.255.  The typical multicast applications include the following.
  • Video conferencing
  • Audio conferencing
  • Stock Quotes
  • Distributed LAN/WAN Software Applications
  • Weather Updates
  • Data Conferencing
  • Network-based games
  • Online Training
  • Database replication
Multicasting applications minimize the demand of the network bandwidth while sending the information from one source to multiple destinations via same stream.
Multicasting can be implementing in the following situations.
  • For better bandwidth utilization.
  • Less Router/Hosts Processing.
  • When sending the same data to the multiple receivers is required.
  • When the recipient address is unknown.
  • When a one-to-many communication systems model is required.
It has many advantages over the unicast and broadcast communication system such as the following.
  • Enhanced performance.
  • Optimized performance.
  • One-to-many communication system.

How to Install SQL Server 2008 - A Step by Step Guide

A Step by Step guide to installing SQL Server 2008 simply and successfully with no prior knowledge
Developers and system administrators will find this installation guide useful, as will seasoned DBAs. It will teach you the basics required for a typical, problem-free installation of SQL Server 2008, allowing you to add other components later if you wish. Remember to install the .Net Framework 3.5Before you start the installation, you’ll need to install the .Net 3.5 Framework. This comes pre-installed on Windows 2008 Server, but for earlier versions of Windows, you’ll need to install it first. This is a straightforward pre-requisite and is usually included as part of the SQL Server 2008 installation. However, if you don’t know how to do this, or for some reason you need to download it, check out the guide Installing .Net Framework 3.5 for SQL Server 2008.
Once this Framework in installed you can commence the installation of SQL Server 2008.
STEP 1 : Copy the installation filesFirst off I’d recommend you copy the entire directory structure from the SQL Server 2008 installation disc to the C: drive of the machine you are going to install it on.
Although this means you need to grab a cup of coffee whilst it’s copying, this has three advantages:

  • It makes the installation process much faster than running it from CD/DVD once it gets started.
  • It allows you to easily add or remove components later, without having to hunt around for the CD/DVD.
  • If your media is damaged and a file won’t copy, you get to find out now, rather than halfway through the installation.
Here’s what my system looks like after the copy: STEP 2 : Setup.exeDouble click on the setup.exe file.
After a few seconds a dialog box appears:
This will disappear from the screen and then the main installation page appears: STEP 3 : SQL Server Installation Center
Click on the Installation hyperlink on the left hand side of the screen:
STEP 4 : SQL Server Installation CenterClick on the "New Server stand-alone installation" link on the right side of the screen: The following dialog appears on the screen whilst the install program prepares for installation: After a minute or so (the timing will vary according to your system), the following screen appears: STEP 5 (optional) :
If any checks have failed, click on the Show details button or "View detailed report link" to find out the cause, correct it, then click on the Re-run button to perform the checks again.
STEP 6 : Product key
If all checks have passed, click on the OK button. After a few moments, the option to select the edition and to enter the license key (or “product key”) will appear. Note that the product key box may already be populated, depending on which edition you have. Don’t enter the product key we’ve shown here, it won’t work on your system!:
STEP 7 : License TermsEnter the product key into the box, or choose the free edition if you're evaluating SQL Server 2008, and click on the Next button:
Click in the 
"I accept the license terms" check box, then click on the Next button again.STEP 8 : Setup Support Files
The following screen appears; click on the Install button:

The following screen will appear whilst Windows Installer prepares itself for the installation. This will take a short while:

After 30 seconds or so the dialog appears again:
STEP 9 : Setup Support Rules
If all is well, the following screen appears:

Click on the 
Next button again.STEP 10 : Feature Selection
Select the features you want to install.
At a minimum, the following are useful (I'd argue essential), but what you need will depend on your needs:

Click on the 
Next button.STEP 11 : Instance Configuration
After a short while the following screen appears:

For most installations, keep the default settings.
Click on the 
Next button.STEP 12 : Disk Space Requirements
This screen just tells you if you have sufficient disk space on the drive you’re installing to, and what’s going to be installed where.

Click on 
Next.

SQL Server Club Membership Benefits
Articles written by experienced DBAs and developersMembership is free forever
Get your content published - articles, news, blogs, eventsNo spam - guraranteed!
As a bonus and to thank you for supporting us, we'll give you a 20% discount off all Norb Technologies tools. Join today to take advantage of these benefits - join SQL Server Club now.
STEP 13 : Server Configuration
This step allows you to set up the service accounts that will be used to run SQL Server. If you have created Windows NT or Active Directory accounts for use with services, use these.If not, then just to get the installation up and working, use the built-in Network Service account for all three services listed (this account does not require a password).
This allows SQL Server to start up after installation. However, it can be easily changed later to another account through the Services applet (Control Panel -> Administrator Tools -> Services):

In addition, remember to change the 
Startup Type to Automatic, for all three services. This automatically starts the SQL Server database engine, SQL Agent and SQL Browser services when the server is re-booted.The first service runs the SQL Server database engines executable process. The other two services allow scheduled jobs to run after installation (and after a re-boot), and allow the SQL Server to be found by clients on the network.
Do not worry about changing the collation tab, unless there is a specific requirement for anything other than the default collation sequence. Finally, click on 
Next.STEP 14 : Database Engine Configuration – Account Provision
This screen allows you to set up database engine security.

Change the 
Authentication Mode to Mixed Mode unless you are certain you only need Windows-only authentication.
  • Many third party applications rely on SQL Server logins to operate correctly, so if you are setting up a server for a third party application, rather than one developed in-house, enabling Mixed Mode authentication is a good idea.
If you pick Mixed Mode security, you must also enter a password for the sysadmin account (sa).Enter and confirm a secure password for the sa account and keep it somewhere safe. Do not give it to any one you do not want to have access to the SQL Server.
Note that you MUST also provide a Windows NT account on the local machine as a SQL Server administrator. If you do not want Windows system administrators to be able walk up to the box and login to SQL Server, create a new, local, dummy Windows user and add this account instead. Otherwise, add in the local administrator account, or your own Windows account on the domain in which the SQL Server will reside.
STEP 15 : Database Engine Configuration – Data Directories
Click on the 
Data Directories tab.
Change the directories to specify which drives in your system will be used for the various types of database files.Generally it’s advisable to put the User database directory and User log directory on separate physical drives for performance, but it will depend on how Windows has been configured and how many disk drives you have available.
If you are installing on a single drive laptop or desktop, then simply specify:

Data root directoryC:\Program Files\Microsoft SQL Server
User database directoryC:\Data
User log directoryC:\Logs
Temp DB directoryC:\TempDB
Temp Log directoryC:\TempDB
Backup directoryC:\Backups
Do not click on the FILESTREAM tab unless you know you need to change these options, as it is not generally required for most installations, but can easily be changed by using sp_configure 'filestream_access_level', ''after SQL Server has been installed. Click on Next.
STEP 16 : Error Usage ReportingThis screen simply asks if you want to send error information to Microsoft and can safely be skipped if you do not want to share any information.
Click boxes if you want to help Microsoft help you.
Click on 
Next again…STEP 16 : Installation Rules
This screen simply checks if there are any processes or other installations running which will stop the installation of SQL Server 2008.

Click on 
Next again – you’re almost ready to install: STEP 17 : Ready to InstallThis screen summarises what you are about to install and gives you a last chance to cancel or change anything that’s wrongly configured: Check that what’s being installed is what you want and then click on Install when you’re sure you want to start the installation process: Installation ProgressSQL Server 2008 will now install. How long it takes depends on the speed of your machine, what load it’s under, the installation media (CD is slower) and what you’ve chosen to install. …More Installation Progress
... and Finally
Finally, the installation will complete:

...and the following dialog box will appear:
Click on OK, the machine will NOT reboot.
The following will appear:

…followed by:
Click on the Next button again...STEP 18 : Installation Complete
The following screen appears:

It may be worth clicking on the installation log at the top of the screen to check everything’s gone as expected. Not that this is MUCH smaller than the usual SQL Server installation log files of old.Finally, 
click on the Close button. The following dialog will appear: Click on OK – your server will NOT re-boot at this point.
The dialog box will disappear and you will be returned to the Installation Center:
Click on the Close button (the “x”) in the top right of the screen.
Finally, manually reboot your machine to complete the SQL Server 2008 installation.
Top Tips :
How to check that SQL Server 2008 has installed correctlyHere are a short number of post-installation checks which are useful to perform after re-booting your new SQL Server. You don’t have to run these, and there are other ways to check, but they are very useful for non-DBAs to be sure that the installation is basically sound and a connection can be made to the new SQL Server before handing it over to someone else. Check 1: Has the SQL Server Service Started?Check SQL Server 2008 has started. Check 2: Does Management Studio Work?
Check Management Studio works by firing it up.
Click on NO when you see this dialog box: Check 3: Can you run a basic query against the new SQL Server?Check SQL Server works by running a simple query from Management Studio: Enter the query shown below and hit F5 to run it: Check 4: Is SQL Server Agent Running?
Check SQL Server Agent is running for scheduled jobs. There should be a green arrow next to the SQL Server Agent database symbol (it’s small, you might have to look hard):
Check 5: Can SQL Server be seen from the Network?Check that the new SQL Server can be seen from another SQL Server on the same domain by running isql –L (or osql –L):
If you can’t see the new SQL Server in this list, check that the SQL Server Browser service is started on the machine where you have just installed SQL Server.
Check 6: Has the TCP/IP network protocol library been enabled on the server?
If the browser service is started but you still cannot connect to the server, click on 
Start ->Programs -> SQL Server 2008 -> SQL Server Configuration Manager (on the server where SQL Server’s just been installed)
The SQL Server Configuration Manager window opens.
Click on the 
SQL Server Network Configuration node and expand it.In the example below, we have MSSQLSERVER (a base instance of SQL Server), and SQLEXPRESS showing as installed.
If in doubt, click on 
Protocols for MSSQLSERVER. In the above screenshot, the TCP/IP network protocol library is disabled. We need to enable it in order that remote servers can talk to the newly installed SQL Server.
  • A word of explanation : In most installations, Named Pipes can be ignored, unless there is a requirement for it. In virtually all environments, VIA can also be ignored as this protocol requires a special network card. Shared memory is the “local” protocol that SQL Server uses when talking to a client application on the same server as itself, for example when SQL Server Management Studio connects to it. It is usually best to leave this enabled.
You will need the TCP/IP protocol enabled if you need to connect to your new SQL Server from a remote client or another server via TCP/IP, which is what most networks use.
If it shows as 
DISABLED (above), double click on the TCP/IP protocol line, and the following window will appear: Ensure that Enabled is set to Yes, and click on OK.
The following warning will appear:

Click on OK, and you will be returned to the Configuration Manager window, where TCP/IP will now be shown as enabled:

Go back to the Services applet, and re-start the MSSQLSERVER service so that the TCP/IP protocol can be used to connect to your new SQL Server.Then try to connect to it again from a remote machine.
If you have experienced problems with the previous connectivity tests, you should now be able to repeat at least some of them successfully.

How to Implement Policy Based Management: A Primer in SQL Server 2008


Introduction
Policy Based Management was previously known as the Declarative Management Framework (DMF) and has made its name by ensuring compliance inside your SQL Server databases.Why Compliance?
Today organizations are facing challenges for staying compliant. You either need tools, or the knowledge to use those tools, in order to ensure compliance in your company’s infrastructure.
Globally, compliance is considered a serious business as it helps prevent unauthorized access to the resources and people that use the company’s infrastructure. Let’s take a look at a figure below:
Diagram to Show Policy Based ManagementFrom here on I will be referring to Policy Based Management as PBM. For implementing PBM, you will need to understand the following three components:
Policy Based Management StructureAt the foundation of it all are facets. Facets are basically a sub-system of pre-defined database and server properties.
Facets
A facet can have multiple properties. There are more than 70 facets in SQL Server 2008 as you can see from the figure below:
Policy Based Management Facets ExampleFor example, the database facet contains multiple properties - one of them is the Owner property. Once chosen this property will return the owner of the database.
Conditions
A condition(s) validates a facet or a series of facets.
PoliciesPolicies implement conditions based on the facets defined.
ImplementationWe shall now create a new database called SQLServerClub and apply a policy that ensures that the Database Recovery model is set to FULL Recovery:
  1. Click on Start > All Programs > SQL Server 2008 > SQL Server Management Studio
  2. Now create a new database called SQLServerClub and click on Ok.
  3. You should now have a database SQLServerClub as shown in the figure below:

  4. Navigate to the Management folder and expand it. PBM is present at the first instance.

    You will need to identify if it’s enabled or disabled. The figure below indicates when PBM is disabled:



    The figure below indicates when PBM is enabled:

  5. Now first we need to understand which facet enables us to check the Database Recovery Model. As you can see below the Database Maintenance Facet contains the Recovery Model:

  6. Now right click on Conditions > Click New Condition


  7. Now in the General section, enter the name for the condition:
    Name: DB Recovery Model Compliance
    Choose a Facet: Database Maintenance
    Expression: Recovery = FULL


  8. Now we need to give this condition a description in the event the compliance is not met:


  9. You can locate the new condition under the Conditions Folder:


  10. Now that we have our condition in place, we will create a Policy that evaluates this condition.
  11. Right Click on the Policy folder and choose New Policy:


  12. Now give the Policy name "Database Recovery Model". Choose the condition: DB Recovery Model Compliance.

    Now under against targets > Choose Every Database

    The Evaluation Mode can be of two types: On Demand (Default) and On Schedule

    Leave the default as On Demand.

    Server Restriction: None


  13. Under the Description page leave the Category as default.

    Description: You can write any custom message you wish to convey to the user.
    Under the Text to Display: You can write a custom message saying to either contact the DBA or look at a specific URL of the organization that defines these policies:


  14. Now it’s time to evaluate our policy to ensure it is working :-)!
  15. For demonstration purposes, I intentionally made the SQLServerClub Database Recovery mode toSimple.
  16. To evaluate this, right click on your policy and choose Evaluate.
  17. You should get an error as shown below:



    Now click on the View hyperlink to investigate the reason for the compliance failure.



    As you can see, the expected value was Full and the actual value was Simple.
  18. Now let us get our database into a compliant state. To do this, click on the checkbox of the policy and click on Apply.



    You will now get a warning, asking if you wish to apply the policy:



    Click on the Yes button.
  19. Then you will get a check mark as shown below:


  20. Right click on the SQLServerClub database and choose Properties. You should then navigate to the Options Page and see that the Database Recovery Model is now set to Full:


You have successfully implemented PBM :-)! There are many other things to explore.



In the forth coming series, I shall explore Business Requirements implementation using PBM.

Stay tuned!

Please send me your valuable feedback to anil.mahadev2009@live.com