SQL to Oracle Linked Server

I am trying to create a linked server from SQL2000 to Oracle9i.
i have done followings:
Install Oracle9i client on sql server machine.
Create a tnsname entry for my oracle database.
Created a linked server using following query:
exec sp_addlinkedserver 'ORA_HIPPOCRT',
'Oracle', 'MSDAORA', 'HIPPOCRT'
exec sp_addlinkedsrvlogin 'ORA_HIPPOCRT',
false, NULL, 'HR', 'password'
But when I query the data as follows:
SELECT * FROM ORA_HIPPOCRT..HR.EMPLOYEES
I get following errors:
Server: Msg 7399, Level 16, State 1, Line 1
OLE DB provider 'MSDAORA' reported an error.
[OLE/DB provider returned message: Oracle client and networking components were not found. These components are supplied by Oracle Corporation and are part of the Oracle Version 7.3.3 or later client software installation.
Provider is unable to function until these components are installed.]
OLE DB error trace [OLE/DB Provider 'MSDAORA' IDBInitialize::Initialize returned 0x80004005:   ].
What I am doing wrong?

I can get this to work using OPENQUERY() i.e.
select * from OPENQUERY(andyh, 'select * from TRAINDB.LINKEDSERVERDATATYPETEST')
To me though this has bodge written all over it.
Anyone out there with advise for me?
thanks.

Similar Messages

  • Facing problem in distributed queries over Oracle linked server

    Hi,
    I have a SQL Server 2005 x64 Standard Edition SP3 instance. On the instance, we had distributed (4 part) queries over an Oracle linked server running fine just a few hours back but now they have starting taking too long. They seem to work fine when OPENQUERY
    is used. Now I have a huge number of queries using the same mechanism and is not feasible for me to convert all queries to OPENQUERY, please help in getting this resolved.
    Thanks in advance.

    Hi Ashutosh,
    According to your description, you face performance issues with distributed queries and
    it is not feasible for you to convert all queries to
    OPENQUERY. To improve the performance, you could follow the solutions below:
    1. Make sure that you have a high-speed network between the local server and the linked server.
    2. Use driving_site hint. The driving site hint forces query execution to be done at a different site than the initiating instance. 
    This is done when the remote table is much larger than the local table and you want the work (join, sorting) done remotely to save the back-and-forth network traffic. In the following example, we use the driving_site hint to force the "work"
    to be done on the site where the huge table resides:
    select /*+DRIVING_SITE(h)*/
    ename
    from
    tiny_table t,
    huge_table@remote h
    where
    t.deptno = h.deptno;
    3. Use views. For instance, you could create a view on the remote site referencing the tables and call the remote view via the local view as the following example.
    create view local_cust as select * from cust@remote;
    4. Use procedural code. In some rare occasions it can be more efficient to replace a distributed query by procedural code, such as a PL/SQL procedure or a precompiler program.
    For more information about the process, please refer to the article:
    http://www.dba-oracle.com/t_sql_dblink_performance.htm
    Regards,
    Michelle Li

  • What is oracle Linked Server

    What is Oracle Linked server? is it a part of oracle database administration?please give some brief introduction of Oracle Linked server.
    Edited by: 933618 on 18/05/2012 01:51

    SQL Server Linked Servers feature lets you access Oracle data and data from other OLE DB/ODBc compatible data sources from SQL Server. Here are the basic steps for setting up an Oracle linked server.
    1. Install and Configure the Oracle Client Software
    Oracle client software provides the network libraries required to establish connectivity to an Oracle database system.Download the software from http://www.oracle.com/technology/software/products/database/oracle10g/index.html. Install the software on your SQL Server system and configure it by using Oracle Net Configuration Assistant.
    2. Create the Linked Server
    Create a linked server by using the T-SQL command
    EXEC sp_addlinkedserver
    'OracleLinkedServer', 'Oracle',
    'MSDAORA', 'OracleServer'
    The name of the linked server is Oracle-LinkedServer.The second parameter, product name (Oracle),is optional.The third parameter specifies the OLE DB provider. MSDAORA is the name of the Microsoft OLE DB Provider for Oracle.The final required parameter is the data source name, Oracle Server.
    3. Add Logins for the Linked Server
    Next, provide the SQL Server system with an Oracle login to access the Oracle database by using the sp_addlinkedsrvlogin command
    EXEC sp_addlinkedsrvlogin '
    OracleLinkedServer ', false,
    'SQLuser', 'OracleUser',
    'OraclePwd'

  • Oracle Linked Server problem in SQL Server

    I'm using the MS OLE DB Provider for Oracle in my SQL Server linking an Oracle 9i server to the SQL Server 2000 server. I get the following error when I try to execute a query thru the SQL Server Query Analyzer:
    [OLE/DB Provider 'MSDAORA' IOpenRowset::OpenRowset returned 0x80004005:   ]
    I can however define an ODBC connection and use DTS to get to the Oracle database just fine from the SQL Server machine. I need the linked server query to work though since I'll need it for a new application.
    Any help is very much appreciated.
    Thanks.
    Anja

    I guess I'll answer my own question. I found that the setting SQL Query Analyzer was set to "Implicit Transactions" in the current connection properties. When I turned that off the query ran fine

  • MS SQL 2005 x64 Linked Server to Oracle 10g 32bit

    I need to connect to a 10.2.0.4 Oracle DB from a SQL Server 2005 x64 on W2003.
    The Instant Client installed is 10.2.0.1 with ODP 10.2.0.3, which is used to connect to another Oracle DB.
    I get de error ORA-12154 while doing the linked server query.
    Do I really need to update de Instant Client?
    Thankx and some more info.
    I can reach it with TOAD from my laptop which has Instant Client 11.1.0.7.
    I followed several how-tos while configuring the linked server.
    The other linked server supposely works but I'm not sure and don't know the Oracle version.

    Hi sanjay,
    but why sysdate is giving me the today's date and when i use getdate ...it does not give me anything..
    i am using openquery tooracle data base..usually i have to use Oracle command..
    Mo..

  • TSQL to retrieve Oracle linked server records

    We're porting an Oracle system to SQL server and it's not going well...
    Our system is a data warehouse that extracts data from an Oracle operational system. In the Oracle version we use database links to access Oracle. On SQL Server we've created a linked server. All OK so far.
    When we try to access the linked server in TSQL we have problems:
    - select on a four part name does not pass filters to Oracle and our tables are huge
    - OPENQUERY works fine but won't let us pass parameters
    We therefore seem to be stuck when we want to update SQL server using a single keyed access to Oracle (SQL retrieves the whole table and then filters; we're processing 20,000 records and this is not acceptable!)
    I would appreciate any help you can give; I've spent most of the day searching the web for examples where people have this working, but got nowhere... help!
    Thanks in advance

    tnsping search for an alias in tnsnames.ora. under alias definition it takes HOST and PORT values from ADDRESS.
    I'm almost sure the problem is with an alias. Your config means that in your clients' network there is and oracle cluster with at least 2 nodes (127.1.2.3 and 127.1.2.4) configured to balance workload or smth.
    Do you have network communications set up only to one node or to both? I think the following steps works in both cases, but it won't balance workload nor failover if you have access to both nodes.
    Copy your tnsnames.ora somewhere for backup, then clear its content, copy-paste there a template
    YourAlias =
      (DESCRIPTION =
        (ADDRESS =
          (PROTOCOL = TCP)
          (HOST = 172.1.2.3)
          (PORT = 1545)
        (CONNECT_DATA =
          (SERVICE_NAME = ServiceNameHere)
    and fill it with your alias name, IP address and port (already checked via telnet) and SERVICE_NAME parameter.
    If two nodes have different service names, and you don't know each node you connect, try first one, then the second one.
    To connect to failover environment you surely need network access to both nodes, but I don't know if its enough - i haven't seen configurations like that.
    I did as you instructed and still get TNS-03505: Failed to resolve name.  Does it matter that my TNS Ping is version 12.1.0.1.0, and they are on Oracle 11?  I wouldn't think so but figured I should ask.  Also, is there a way that they could have
    disabled tnsping?  They are extremely secure, and lock everything down so maybe that's the problem here.
    André

  • Running a SSIS package with SQL Job and Linked Server

    I have a SSIS 2008 package. In one of the Script task I am calling a stored procedure which is  using Openquery using linked server. I deployed this package with protection level as "EncryptWithPassword" and gave a password to the package.
    Created a SQL job and edited its command line to include the password. If I login to SQL Server Mgmt Studio with Windows Authentication and run the job manually it runs fine. But when I schedule it then I get an error that "The Communication link to Linked
    server failed".
    Please help 

    Hi Vivek.B,
    The issue should occur because the SQL Server Agent Service Account or SQL Agent Proxy account under which the job step runs doesn’t have sufficient permissions on the linked server.
    If the job owner is the sysadmin fixed server role, the job can be run under the SQL Server Agent Service Account or a proxy account, then please make sure the SQL Agent Service Account or the proxy account has corresponding login on the linked server. If
    the job owner is not a sysadmin fixed server role, the job must run under a proxy account. In this case, make sure the proxy account has a corresponding login on the linked server.
    Reference:
    http://blogs.msdn.com/b/dataaccesstechnologies/archive/2009/10/13/who-owns-my-job-and-who-runs-it.aspx
    Regards,
    Mike Yin
    TechNet Community Support

  • Create sql view from linked server ?

    server1.database1.dbo.table1
    Table1 contains columns
    Name, Author, Date, Quantity
    server2.database2.dbo.table2
    Table2 contains columns
    Id, Author
    How can I create a view on server2 that cointains all data from
    server1.database1.dbo.table1, but instead of value of column Author,
    I need a value of column Id ?

    Try the below :Its a sample method, you can use it in your actual code.
    --My local server,I created tablecreate table statuses(filestatus int)
    Insert into statuses Select 1--Created a view locally to access the objects from other server.--You need to qualify the object as server-db-schema-objectname as below--join these two tables in the view.
    create view test_view
    as
    Select B.filestatus,A.filestatusdesc From <Linkedserver>.<DBName>.<schema>.<objectname> A
    Inner join statuses B on A.filestatus =B.filestatus
    --Execute the below to get the records from different server
    Select * From test_view

  • Connect Non-SAP Oracle db (32bit) in sql 2005 (64 bit) using linked server

    Hi,
    I am connecting Oracle 10g database from SQL 2005 using linked server, in which i get the error
    "Cannot initialize the data source object of OLE DB provider "MSDAORA" for linked server "L2ORACLE".
    OLE DB provider "MSDAORA" for linked server "L2ORACLE" returned message "Oracle client and networking components
    were not found. " (Microsoft SQL Server, Error: 7303)
    SAP Server with sql 2005 db is in 64 bit server / Windows 2003
    Non-SAP Oracle 10g is in 32 bit windows 2003 server.
    i have installed Oracle 64 bit client in the SAP Server and also copied the 64 bit version of dboraslib.dll to the DIR_LIBRARY path. I am able to view the oracle tables in the oracle client.
    But, when i create the linked server, it gives the above error.
    If i install 32 bit version of Oracle client in the SAP Server, i am able to create the linked server in the db level, but, it says "Work Process restarted, session terminated" message in the Z program in SAP.
    The same works in the test environment where both are 32 bit servers. problem is when SAP server is in 64 bit and non sap is in 32 bit.
    Please suggest.
    Thanks and Regards,
    Nagu

    "Cannot initialize the data source object of OLE DB provider "MSDAORA" for linked server "L2ORACLE".
    OLE DB provider "MSDAORA" for linked server "L2ORACLE" returned message "Oracle client and networking components
    were not found. " (Microsoft SQL Server, Error: 7303)
    check the workprocess traces for errors (and/or SM21). It seems that the system is "not aware" that an Oracle client is installed.
    64bit programs can´t load 32bit libraries/DLLs that´s why the workprocess dumps when you use the 32bit client.
    Markus

  • Cannot get data of the row from OLE DB provider "OraOLEDB.Oracle" for linked server

    I have created a stored procedure in SQL Server for a report that uses parameters.  In the report I am linking an Oracle table.  I use a subquery like this to query the Oracle table:  (select * from openquery(oracle_linked_server, 'select
    partno, description from oracletable')).  If I run the subquery it works fine every time.  The linked server uses an oracle account which has access to the oracle table.  When I first created the Stored Procedure it worked fine for me.  When
    I test the report, it worked fine.  Then I asked another user to test it and it broke with the below error message.  
    OLE DB provider "OraOLEDB.Oracle" for linked server "XXXX_ORACLE" returned message "ORA-01403: no data found".
    Msg 7346, Level 16, State 2, Procedure usp_report_XXXXXX, Line 15
    Cannot get the data of the row from the OLE DB provider "OraOLEDB.Oracle" for linked server "XXXX_ORACLE".
    Now when I try the report or the stored procedure, I get the same error.  I tested the oracle subquery in the stored procedure and it still works.  The report uses a service account to execute the stored procedure.
    I am using SQL Server 2012 Developer Edition 64 bit (11.0.5058) Management Studio to develop the stored procedure.  The SQL Server I am accessing and running the stored procedure is SQL Server 2008R2 Developer Edition 64bit (10.50.2550).  The user
    that tested the report for me has SQL Server 2008R2 but that shouldn't matter since he is running the report in Internet Explorer.
    What is changing that it works for a while and then stops?
    Fred
    Fred Schmid

    I found the answer.  It was in the query.  I put the TRIM statement on the part# field in the Oracle subquery and took the LTRIM function out of the ON clause that joined my SQL Server table with the Oracle linked server table.  Now everything
    works.  The query looks like this:
    SQL_Server_Table sst
    LEFT OUTER JOIN
    (SELECT * FROM OPENQUERY(OracleLinkedServer, 'SELECT TRIM(partNo) AS partNo, partDesc FROM OracleTable')) ols
    ON sst.partNo = ols.partNo
    Thanks for pointing me in the right direction.
    Fred Schmid

  • SQL Server 2005 64BIT Linked Server Cannot fetch a row using a bookmark

    We get the following error SOMETIMES when trying to delete a row from an Oracle 10g database table via the SQL 2005 64BIT linked server.
    DELETE [edwdev]..SYSTEM.SAIC_ARTIFACT_LOG FROM tblArtifactLog src WHERE src.source_seq_no = SAIC_ARTIFACT_LOG.art_seq_no and src.source_name = 'edwdev' [SQLSTATE 01000] (Message 0) Cannot fetch a row using a bookmark from OLE DB provider "OraOLEDB.Oracle" for linked server "edwdev". [SQLSTATE 42000] (Error 7333). The step failed.
    They keyword here is SOMETIMES. The job would fail 100% of the time before applying ODAC 10.2.0.3.0, after the ODAC install the job fails about 40% of the time. We have this setup in a test enviornment and yes there are rows of data in the table everytime the job runs.
    As far as the OraOLEDB10.dll install we have a date of 2/20/07 but a version of 10.2.0.2. I am wondering if this shouldn't be a new version.

    LearnMoreAgile wrote:
    so does that mean no one at oracle can guide me in this issue before i goto microsoft ?How has the Linked Server been created in MSSQL? OraOLEDb.Oracle is the class name for the Oracle OLEDB provider which should appear in your list of OLEDB providers in your favourite windows dev tool or when creating the linked server. If it doesn't appear likely you didn't choose to install it. I don't know if it's a default install with the 64bit client, but the ODAC client contains the .net provider and not the OLEDB provider.
    Niall

  • Instant client 10.2.0.3 used with ms sql linked server doesn't work

    Hi,
    instant client version 10.2.0.3 doesn't work as microsoft sql linked server (both 2000, 2005) while 10.2.0.1 does. (tested by overwriting files in instant client directory - basic instalation, then restart mssql services) - the message is, that the oracle client is not installed when running sql (registration of linked server is ok).
    Is it a known issue or is there any workaround?
    (Windows XP, 2003, MS SQL 2005, MS SQL 2000, Oracle 9.2.0.6)
    Thanks,
    Pavel

    I installed oracle-instantclient-basic-10.2.0.3-1.i386.rpm on a redhat box to
    connect oracle database server 9.2.0.8.0 install on win box.Is there any other Oracle software installed on the RedHat machine?
    In which directory did you install Instant Client?
    Can you login with sqlplus?
    On the database server, I defined parameters like this :
    NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS'
    NLS_NUMERIC_CHARACTERS='. 'This will have no effect on your problem - these are client environment variables.
    Before starting apache (lampp) I set Oracle environement like this :
    export NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS'
    export NLS_NUMERIC_CHARACTERS='. '
    My application worked very fine.
    BUT a few days ago (1 week), in my application, the date format display wrong,
    I have this format : DD/MON/YYYY even with
    export NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS'
    before starting apache.The ancient question: Do you remember what you changed before it stopped working?
    So I stop my apache and try set Oracle environment like this :
    export ORACLE_HOME=/usr/lib/oracle/10.2.0.3/clientAs has been said, do away with that.
    export PATH=$ORACLE_HOME/bin:$PATHYou don't need that either.
    Except is might be nice to have the directory that contains sqlplus in PATH.
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATHNow that surprises me.
    Normally, instant client shared libraries are not installed in a subdirectory.
    Does this "lib" directory exist?
    You should add the directory containing the *.so files to LD_LIBRARY_PATH.
    When I restart apache and test my application, an error php message occurs :
    Ocisessionbegin error while trying TO retrieve text FOR error ora-12705
    I check my oracle_home, I don't think I make a mistake?It seems that Oracle cannot find the instant client shared library libociei.so.
    This library must be found in LD_LIBRARY_PATH.
    In this context it would be interesting to know (as I asked above) if any other Oracle products are installed on this machine.
    Yours,
    Laurenz Albe

  • Linked Server :: OLE DB provider "OraOLEDB.Oracle" for linked server "ABC" returned message "New transaction cannot enlist in the specified transaction coordinator. ".

    Hello All,
    As mentioned in title, i am stuck up with that articular error from last three days,
    i have following scenario, my SQL server 2008, my oracle 10g are on both same machine with OS Windows Server 2008.
    the following error generated on my management studio when i execute my procedure written in my SQL server. Following is original source code snippet after error massage.
    OLE DB provider "OraOLEDB.Oracle" for linked server "ORCL" returned message "New transaction cannot enlist in the specified transaction coordinator. ".
    Msg 50000, Level 16, State 2, Procedure PROC_MIGRATE_MST_FRM_ORA_SQLSERVER, Line 43
    The operation could not be performed because OLE DB provider "OraOLEDB.Oracle" for linked server "ORCL" was unable to begin a distributed transaction.
    BEGIN TRY
    -- MIGRATION OF PR_COMPANY_MH START
    BEGIN TRANSACTION T1
    PRINT 'mILAN NNNNNNNNN 11'
    INSERT INTO PROD.PR_COMPANY_MH
    SELECT * FROM OPENQUERY(ORCL, 'SELECT * FROM PR_COMPANY_MH WHERE SQL_FLG = ''N'' ')
    PRINT 'mILAN NNNNNNNNN 12'
    UPDATE OPENQUERY(ORCL, 'SELECT SQL_FLG FROM PR_COMPANY_MH WHERE SQL_FLG = ''N''')
    SET SQL_FLG = 'Y'
    --EXECUTE ('UPDATE PROD.PR_COMPANY_MH SET SQL_FLG = ''Y'' ') AT [ORCL]
    PRINT 'mILAN NNNNNNNNN 13'
    COMMIT TRANSACTION T1
    -- MIGRATION OF PR_COMPANY_MH END
    END TRY
    BEGIN CATCH
    PRINT 'mILAN NNNNNNNNN 14'
    ROLLBACK TRANSACTION T1
    PRINT 'mILAN NNNNNNNNN 15'
    SELECT
    @ErrorNumber = ERROR_NUMBER(),
    @ErrorSeverity = ERROR_SEVERITY(),
    @ErrorState = ERROR_STATE(),
    @ErrorLine = ERROR_LINE(),
    @ErrorProcedure = ISNULL(ERROR_PROCEDURE(), '-');
    PRINT 'mILAN NNNNNNNNN 16'
    SELECT @ErrorMessage = ERROR_MESSAGE();
    RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState, @ErrorNumber, @ErrorProcedure)
    PRINT 'mILAN NNNNNNNNN 17'
    END CATCH
    this perticular part is raising that error, and i had tried every configuartion on my local machine related to MS DTC.
    When i remove my transaction code, its work just fine no exception raise, but when i use then i.e. BEGIN TRAN, COMMITE TRAN, AND ROLLBACK TRAN. its giving me error, other wise its fine.
    Please Help or disscus or suggest why my transaction base code is not woking????
    thanks in advance.
    Regards,
    Milan

    Sorry again, I am new on any kind of forum, so i am learning now, following is the error massage generated by SQL Server. and its not
    an architecture problem, i had just included my complete architecture to be more informative while asking for the solution or suggestion. My real problem is T-SQL, i think and its related to Distributed queries raise in SQL Server in Oracle Link Server.
    OLE DB provider "OraOLEDB.Oracle"
    for linked server "ORCL" returned message "New transaction cannot enlist in the specified transaction coordinator. ".
    Msg 50000, Level 16, State 2, Procedure PROC_MIGRATE_MST_FRM_ORA_SQLSERVER,
    Line 43
    The operation could not be performed because OLE
    DB provider "OraOLEDB.Oracle" for linked server "ORCL" was unable to begin a distributed transaction.

  • Execute Oracle procedure via Linked server takes very long

    Exec ('Begin [procedurename]; End;') at OracleLinkedServer
    I used this statement to execute store procedure on Oracle database via linked server. It keeps running and never ends.
    However, if I run this procedure Begin [procedurename]; End; in TOAD, it completes in 10s. 
    This procedure is just simply to merge data between two tables.
    Is there any bug or limit on SQL Server Oracle linked server? I am using SQL SERVER 2012 and Oracle 11g client.

    See if this link helps you
    http://markmal.blogspot.co.il/2008/01/it-is-really-pain-if-you-need-to-call.html
    select * from openquery(MYORADB, '{CALL SCOTT.PROC4MS({resultset 25, OUTPUT})}');
    SELECT * FROM OPENQUERY(<linked server name>, '{CALL <oracle sp>}')
    Best Regards,Uri Dimant SQL Server MVP,
    http://sqlblog.com/blogs/uri_dimant/
    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting:
    Large scale of database and data cleansing
    Remote DBA Services:
    Improves MS SQL Database Performance
    SQL Server Integration Services:
    Business Intelligence

  • Error with Linked Server

    I am trying to configure a linked server to connect from MS Sqlserver2000 to Oracle.
    I am using an Oracle 8i client. Following notes on this website and from microsoft I changed
    my registery enteries as follows:
    OracleOciLib oci.dll
    OracleSqllib orasql8.dll
    OracleXalib oraclient.dll
    My odbc connection works when tested thru Oracle Network administation but when I try to look at any tables of the linked server (using MS Enterprise Manager) I get the following error:
    "Error 7399: OLE DB provider 'OraOleDB.Orcle' reported an error"
    This occurs when I use the oracle odbc
    When I use the microsoft odbc connector I get:
    "Error 7399: OLE DB provider 'ContextProvider.MSDAORA.1' reported an error"
    Any ideas.
    Thanks in advance.
    Patrick

    To view tables on an Oracle linked server in Enterprise manager you need to add a security context to use when there is no SQL Server user
    It's on the bottom of the "security" tab on the server properties page.

Maybe you are looking for

  • Borderless printing with Adobe reader or acrobat and HP Officejet Pro 8100

    Hello, When printing borderless with my Pro 8100 the printed pdf moves about 2mm to te left on the paper. (White vertical strip on the right side is the result and on the left side something is missing!). What causes the problem seems to be that the

  • How do I synchronize multiple *sequential* clips using audio waveforms in Premiere Pro CC?

    I recorded a concert at my kids' school.  I ended up with: Video in six separate clips (video+audio) from my Canon 5D Mark III camera A single audio clip from my Zoom H4n recorder The 5D Mark III can only record clips of up to 4GB in size, and clips

  • Best way to Insert Records into a DB

    hi i have around 400000(4 lakh ) records to insert into a db , whats the optimal way to do it , i tried it doin g using threads i could gain only 2 seconds for 4 lakh records ,suggest me a better way

  • System Unresponsive Once Login Window Appears

    Tomorrow afternoon I'll be brought an Intel Mac mini bought almost a year ago in hopes I can fix a problem.  When it boots, it displays the login window, but then doesn't respond to any action, whether selecting a user or clicking on the restart or s

  • Mac Mini Upgrading

    I got a mac mini 1.25 Ghz and wondering what software I can upgrade to. Right now I'm on OS X 10.5 am I able to go any higher? I use Mountain Lion and love it at work. I plan on upgrading from the mini but it is primarly for school with pages, number