Two identical hosts: MySQL sucks, Oracle doesn't

I have two mostly identically configured V440s with internal disks, the only difference is that one has SUN72G ST373297LC internal disks and the other has SUN146G ST314670LC internal disks. The internal disks are mirrored together with SVM. The internal disks are shared with the OS and swap. There is virtually no paging activity on either system - in fact I removed all on-disk swap devices just to make sure all paging was in memory. Each disk's file system is configured as one big slice in the disks, and the databases share this big root filesystem with the OS.
The big difference is that the host with the 73G disks is running an application plus an essentially write-only MySQL database with MyISAM tables (InnoDB disabled) and the host with the 146GB disk is running Oracle 9-something. There is a big difference in CPU consumption, however - the MySQL host's app is consuming about 50% of CPU, and the Oracle host about 10% - so the MySQL host is paging and context switching, but none of that spawns disk IO as far as I know (remember I have removed all on disk swap devices)
The problem I am seeing is that the host with MySQL/73G disks has insanely high disk service times and is almost fully blocked on IO, as opposed to the Oracle system where the same amount of IO is accomplished with virtually no service queues or blocking.
Examples (output of iostat -xn md/dXX 60):
Oracle host:
r/s w/s kr/s kw/s wait actv wsvc_t asvc_t %w %b device
0.0 57.9 0.0 463.4 0.0 0.5 0.3 8.5 2 31 md/d10
MySQL host for approximately equal IO amount:
r/s w/s kr/s kw/s wait actv wsvc_t asvc_t %w %b device
0.4 56.5 3.5 525.5 0.1 10.7 2.3 187.9 13 26 md/d1
and
r/s w/s kr/s kw/s wait actv wsvc_t asvc_t %w %b device
0.2 77.2 1.9 718.5 0.2 25.1 2.6 324.6 17 35 md/d1
The MySQL host, worst case, can totally block the disk for only modest IO rates::
r/s w/s kr/s kw/s wait actv wsvc_t asvc_t %w %b device
1.6 272.5 12.5 2920.1 0.8 255.5 3.0 932.1 82 100 md/d1
As you can see the MySQL database starts to hose the disk at only modest IO rates. I'm not a DBA, but is MyISAM always this badly behaved? I've tuned the key cache up to 1GB, and the cache is not yet full. AFAIK that's the only tunable in MyISAM that might make a difference.
Unfortunately the app is a piece of junk (Aprisma Spectrum) over which I have no control, it has not even been ported to X86 yet. Of course, I can always move the tables to an external array, but I should not have to buy a $10K RAID array to get decent performance from a system that is only trying to write 3 or 4MBytes/sec.
Any ideas? I am afraid we are going to have to to drop tens of $K on external arrays so we can stripe the filesystem for this DB.

First, on both machines you really should have a decent swap partition. It's much better to have it and not need it than need it and not have it...
Second, what does a truss of the Oracle and MySQL processes show? The output from "truss -x -vall -l -d -p pid" would be most helpful. FWIW, I suspect you'll see Oracle doing a much more efficient job of doing IO. Oracle may also be doing direct and/or async IO, both of which should give improved performance. I doubt MySQL is doing either.

Similar Messages

  • My iPhone has two identical options under "iTunes wi-fi sync" that are the same computer. I only have one user on my  computer, and I tried moving my iTunes file in Finder to organize it and now my library's not synced with my phone. Help?

    My iPhone has two identical options under "iTunes wi-fi sync" that are the same computer. I only have one user on my computer, and I tried moving my iTunes file in Finder to organize it and now my library's not synced with my phone. Help?

    I have the same problem. Right now my iPhone 5S shows 3 instances of the computer to which it is connected under Settings » General » iTunes WiFi Sync. I'm having problems connecting and syncing, and this is probably the cause: the phone chooses one of these connections, and it isn't the one that's actually in use. What's probably happening is that the phone and computer establish a connection using a dynamic IP address, the address becomes "disassociated" due to error, another address is associated, the phone retains each address/link, and each link is displayed as if it represents a separate computer (the fact that the name of the computer is identical is ignored, as the only thing that is considered important is the IP address). But that's all conjecture. More important, I'm not sure how to fix the problem. A network reset doesn't do it.

  • Problems using Quick Migrate in SQL Developer 1.5 for MySQL to Oracle 10g

    Hi all,
    I am trying to use SQL Developer 1.5 migration tools (Quick Migrate) to perform online capture and build source model to migrate from MySQL 5.x to Oracle 10g on Windows platform. I get these errors and the Quick Migrate process fails:
    oracle.dbtools.metadata.persistence.PersistableObject.doInsert(PersistableObject.java:238)
    I did a search and used the sqldeveloper.cmd script but still fails. Then I created a new database and truncated the repository. I now get the above error plus two new ones listed below:
    oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
    Error loading nls:OALL8 is in an inconsistent state
    Error occurred during capture: Protocol violation
    It fails during the capture process for MySQL 5.1 database
    when it begins to capture the tables from MySQL.
    Does anyone know how to resolve these issues when migrating from MySQL to Oracle 10g using Quick Migrate with SQL Developer 1.5 release?
    Regards,
    Ben Prusinski
    Message was edited by:
    benprusinski
    Message was edited by:
    benprusinski

    Hi all,
    I put the following in my sqldeveloper.cmd file:
    SET ORACLE_HOME=%CD%
    What is very confusing is that with SQL Developer 1.5, there are several levels and several SQL Developer executables! I am really not sure which of these to use:
    I created the SQLDeveloper 1.5 directory called SQLDeveloper1_5 on Windows:
    1) cd C:\sqldeveloper1_5\sqldeveloper-5338
    there exists a sqldeveloper.exe
    2) cd c:\sqldeveloper1_5\sqldeveloper-5338\sqldeveloper\sqldeveloper.exe
    3) cd c:\sqldeveloper1_5\sqldeveloper-5338\sqldeveloper\sqldeveloer\bin\sqldeveloper.exe
    Which SQLDeveloper 1.5 executable should I be using and where should I place the
    sqldeveloper.cmd file?
    Also I did try to use a different database and schema for the repository with Quick Migrate but it appears a bug exists in SQL Developer 1.5 version that causes errors with Quick Migrate for MySQL to Oracle? Is this correct?
    As an update, I ran the following commands:
    cd to
    c:\sqldeveloper1_5\sqldeveloper-5338\sqldeveloper\sqldeveloper\bin
    sqldeveloper.cmd sqldeveloper.exe
    Start sqldeveloper.exe
    Perform standard capture for MySQL using the new mig2 schema as the new repository
    It starts the capture but fails on the errors below:
    Error loading nls:OALL8 is in an inconsistent state
    UPDATE
    ============================
    I tried this again and it worked with the exception of one error message listed below:
    Here are the steps that I followed:
    1. Create a Windows cmd script
    Put the following entries in the script:
    SET ORACLE_HOME=%CD%
    save the command windows script as sqldeveloper.cmd
    Copy this script to the base installation directory for SQLDeveloper
    Example:
    1. cd c:\SQLDeveloper1_5\sqldeveloper-5338\sqldeveloper
    2. Start SQLDeveloper with the command script that you created earlier
    Example:
    Open a Windows shell prompt window and execute the following scripts:
    a) sqldeveloper.cmd sqldeveloper.exe
    b) sqldeveloper.exe
    3) In SQL Developer 1.5
    From the Migrate menu,
    a) Delete current repository and create a new schema in Oracle target database call it mig2.
    b) Then create a new repository in SQL Developer 1.5
    c) Right mouse click on the MySQL 5.x database and choose capture
    It worked with the exception of one error message:
    o.jdbc.driver.OracleDriver     
    Error while registering Oracle JDBC Diagnosability MBean.
    So it looks like something is screwed up with my JDBC drivers and configuration for MySQL. How do I diagnose the JDBC driver issue for MySQL?
    Thanks!!!
    Ben
    Thanks
    Ben

  • Certificate error on only one of two identical systems?

    I recently installed two COMPLETELY identical Ubuntu 12.04 systems, PC01 and PC02. The browser is latest version of Mozilla Firefox.
    When visiting https://www.komplett.dk/k/signin.aspx with PC01, the connection is secure and everything is OK, no error messages. When visiting the same URL with PC02, the following error message is shown:
    This Connection is Untrusted
    You have asked Firefox to connect securely to www.komplett.dk, but we can't confirm that
    your connection is secure.
    Normally, when you try to connect securely, sites will present trusted identification to prove
    that you are going to the right place. However, this site's identity can't be verified.
    What Should I Do?
    If you usually connect to this site without problems, this error could mean that someone is
    trying to impersonate the site, and you shouldn't continue.
    Get me out of here!
    Technical Details
    www.komplett.dk uses an invalid security certificate.
    The certificate is not trusted because no issuer chain was provided.
    (Error code: sec_error_unknown_issuer)
    I understand the Risks
    Why is this happening when the systems are COMPLETLY identical? i have tried to delete the profile folder on both systems, but the result is the same. NO certificates has been manually installed on PC01, so that is not the reason. The file size of cert8.db on PC01 is 94K and on PC02 it is 64K, I do not understand how the size can be different when the profiles are newly created.
    I would really like to find out why I am experiencing different behaviour with Firefox, on two identical systems, so any suggestions or ideas are very welcome.

    The Technical Details show:
    <blockquote>www.komplett.dk uses an invalid security certificate.
    The certificate is not trusted because no issuer chain was provided.
    (Error code: sec_error_unknown_issuer)
    </blockquote>
    The www.komplett.dk server doesn't send a required intermediate certificate.
    *VeriSign Class 3 Extended Validation SSL SGC CA
    You can inspect the certificate chain via a site like this:
    *http://www.networking4all.com/en/support/tools/site+check/
    You can install the intermediate certificate from networking4all site or from this VeriSign page (it is the second one).
    *http://www.verisign.com/support/verisign-intermediate-ca/extended-validation-pro/index.html
    Copy the certificate text to a .cer text file and import this file in the Certificate Manager.
    *Options/Preferences > Advanced > Encryption: Certificates - View Certificates

  • Problem with ORA-06502 when exp/imp between two identical versions

    Hi
    I have two identical systems, one system that I develop on and
    the test system. The two systems have the same version of the
    Portal. When I export and then import the application from the
    systems I get a error message on the test system.
    ORA-06502: PL/SQL: numeric or value error: character to number
    conversion error (WWV-11230)
    This error does not appear on the developing system.
    The application I have is a form on a table, and I have some
    buttons with PL/SQL handels on them. I tried to remove this code
    and export with no luck.
    Please help.
    The system:
    Windows NT
    Oracle Portal 3.0.8.9.8
    Thanks
    Jvrgen Swensen

    Could you pls confirm : Have you exported & Imported the shared
    components used by that form?
    If you are not too worried about the templates/fonts then try
    this:
    Click on "Edit" link against that form and click "OK".
    Thanx,
    Chetan.

  • CREATE Link MySQL to ORACLE

    Good morning!!
    I know that is posible to create a dblink between Oracle to MySQL but the question is, Is posible to create a Db-Link between MySQL to ORACLE?
    I hope amwer that question as soon as posible.
    Regads!!

    Ion user11925786 wrote:
    Good morning!!
    I know that is posible to create a dblink between Oracle to MySQL but the question is, Is posible to create a Db-Link between MySQL to ORACLE?
    I hope amwer that question as soon as posible.
    Regads!!And why do you think that the answer would come ASAP?
    AFAIK, mysql doesn't have db link support.
    Aman....

  • Copy data from mysql to oracle database help?

    Im an sql newb and trying to understand how I can automatically copy data from one dtabase to another systems database on the same server.
    We have two differnt applications, but both share customer information, but one is on a win server, while the other is on oracle.
    Each time a customer contacts us via online chat (win server, mysql), we want to copy their entire chat transcript into our CRM's (oracle) customer account. So the folks that use the CRM can see the past chat histories. I hope this makes sense.
    Where can i look to get started on this?
    Thanks

    You could look at Heterogeneous Services (see the forum here Heterogeneous Connectivity but if you want to push data from mysql to oracle you might be better looking at it from the mssql side. I don't know what they offer.
    It might be simpler to do it at the client end. ie cut and paste from the online chat application into a new utility which inserts into the oracle database.
    Incidentally, this forum is specifically for the SQLDeveloper tool. You might get more general help in the "database - general" or "sql and pl/sql" forums

  • Two logical hosts

    we currently have a sun solaris box with two logical hosts dev1 and dev2. The version for oracle is 8.1.7.2. In our listener and tnsnames file we have the host=dev1. When I connect to the database on my own PC I have a problem. When I connect to the database through dev1 I have no problems but when I try to connect as dev2 it just returns the message that there is no listener. I'm thinking this could be with the host definition in the listener and tnsnames file but does anyone know what it should be so I can connect through either logical host?? Thank you in advance.

    Please refer to these docs.
    Implementing Virtual Host, Concurrent Managers and EM DBconsole on Oracle Applications R12 [ID 603883.1]
    Conc-System Node Name Not Registered After Fresh Install Using Virtual Name [ID 948644.1]
    Thanks,
    Hussein

  • ADF BC: Choosing between two identical DB schemas on application startup

    Hi,
    We want to provide users with capability to choose between two identical db schema.
    Anu idea how to do this ?

    Cvele wrote:
    Thanks a lot ! My pleasure.
    One question: datasource name entered by the user (on the login form) is a JDBCDataSource property value for the Application module Configuration (which connect trough JDBC DataSource), correct ?Yes.
    If so, then, we still must define two different sets of App Module Configurations, one for each DB schema, correct ?No. I'm not suggesting that you implement your UI like the demo that I forwarded. It might not be appropriate for your user to type in the datasource name, but the same code would be required to make the datasource name change work. Rather than getting the datasource name from the HTTPRequest and setting on the session where the custom sesison cookie impl and env info provider access you, for your solution that datasource value might come from some other place that the end-user doesn't directly type in.
    Otherwise:
    1. we cannot have two different datasource names, correct ?The example I forwarded should allow you to enter different JNDI names, so those would be different datasources.
    2. in case of one Configuration – what is a way to define (at deployment time) username/password for each of those two schemas ? Is this correct ?The username/password information is encapsulated inside the Java EE container when you define the datasource. The application doesn't know that information and doesn't have to provide it when you are using a JDBC datasource by JNDI name.
    On the other hand, what confuses me, is a fact that you say:
    “You wouldn't use different configurations” And really, you example attached to me have just one App module Configuration (datasource name = jdbc/scottDS), which connect through dataSource.
    Wondering what a user can enter as datasource name, except jdbc/scottDS ?I forget whether in my example I configured another datasource, but the user could enter the name of any available JNDI name for the datasource on the Java EE container.
    Again, I don't suggest necessarily that you let the end-user type it in, that was just how I built the demo since I quickly evolved it from the other dynamic credentials demo that accepted the username and password from the end-user.

  • Customer reference has two identical primary site uses

    This customer reference has two identical primary site uses
    defined in RA_CUSTOMERS_INTERFACE. Please update the SITE_USE_CODE
    field or the PRIMARY_SITE_USE_FLAG so that only one primary site use exists per customer and site use code.
    Thanks in advance

    Check Note: 181622.1 - Customer Interface Imports Multiple Shiptos For A Customer With No Site Use Code
    https://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=181622.1

  • How to compare the data of two identical tables

    My requirement is to compare two identical tables(eg., t1 and t2) and display the column, which value got changed, old value and its new value.
    For eg:
    T1:
    StudId C1 C2 C3
    1 40 50 90
    2 30 80 100
    3 20 10 11
    T2:
    StudId C1 C2 C3
    1 100 60 90
    2 30 90 100
    3 20 60 80
    output should be:
    StudId Column prevvalue changedvalue
    1 C1 40 100
    1 C2 50 60
    2 C2 80 90
    3 C2 10 60
    3 C3 11 80
    Please help me to how to achieve using oracle pl/sql. It is bit urgent

    No need of PL/SQL, you can do it in SQL as shown
    SQL> create table t1
      2  (
      3  studentId number,
      4  c1 number,
      5  c2 number,
      6  c3 number
      7  );
    Table created
    SQL> insert into t1 values (1,40,50,90);
    1 row inserted
    SQL> insert into t1 values (2,30,80,100);
    1 row inserted
    SQL> insert into t1 values (3,20,10,11);
    1 row inserted
    SQL> commit;
    Commit complete
    SQL> create table t2
      2  (
      3  studentId number,
      4  c1 number,
      5  c2 number,
      6  c3 number
      7  );
    Table created
    SQL> insert into t2 values (1,100,60,90);
    1 row inserted
    SQL> insert into t2 values (2,30,90,100);
    1 row inserted
    SQL> insert into t2 values (3,20,60,80);
    1 row inserted
    SQL> commit;
    Commit complete
    SQL> select * from t1;
    STUDENTID         C1         C2         C3
             1         40         50         90
             2         30         80        100
             3         20         10         11
    SQL> select * from t2;
    STUDENTID         C1         C2         C3
             1        100         60         90
             2         30         90        100
             3         20         60         80
    SQL> select
      2  t1.studentId StudId,'c1' ColumnName,t1.c1 prevvalue,t2.c1 changedvalue
      3  from t1,t2
      4  where t1.studentId = t2.studentId and
      5  t1.c1 <> t2.c1
      6  union
      7  select
      8  t1.studentId,'c2',t1.c2,t2.c2
      9  from t1,t2
    10  where t1.studentId = t2.studentId and
    11  t1.c2 <> t2.c2
    12  union
    13  select
    14  t1.studentId,'c3',t1.c3,t2.c3
    15  from t1,t2
    16  where t1.studentId = t2.studentId and
    17  t1.c3 <> t2.c3
    18  ;
        STUDID COLUMNNAME  PREVVALUE CHANGEDVALUE
             1 c1                 40          100
             1 c2                 50           60
             2 c2                 80           90
             3 c2                 10           60
             3 c3                 11           80
    SQL>

  • Syncing contacts of two identical phones on one co...

    Hi,
    I just got two identical C5-03 phones for myself and my wife. I created two seperate log-ins on the Nokia Suite and proceeded to sync and finetune the contacts for both of our phones. The problem is that the Suite doesn't seem to treat the phones and log-ins as two separate entities and mixes up the contacts, pictures, etc... of both and makes a mess of things. Is there a way to keep the two phones separate on the Suite??? Surely someone here must have experienced the same situation.
    Thanks.

    Thanks Farby for the quick response. Maybe this is something that Nokia should really look into?
    I have spent the whole day fiddling with this problem. I even gave separate names to the devices (Nokia C5-03**** and Nokia C5-03****) to try to separate the two, but to no avail
    One thing I'm considering is finetuning all my contacts, doing a sync with my phone, disconnecting and then deleting all contacts from the Suite. After that connecting the wifes phone and doing all again for that phone and then not performing any syncs after that.
    It really does look like a totally backwards way of doing something that should be really simple....

  • Installing 2 ssl certificate on one machine with two virtual hosts

    Hi,
    If you have a managed server in a cluster that has two virtual hosts running
    on it how can you intsall the ssl certificates for both virtual hosts, in
    the admin console.
    any help would be great!

    OK....I figured it out.
    I was able to set the IPV4 properties on the ones needing filtering to use the IP or OpenDNS as the primary DNS and my server address as the secondary and that works.
    I removed OpenDNS forwarder from the server, flushed dns on all machines and so far it's working perfectly.  The machines that are not going to be filtered just go through the server for DNS.
    Hopefully, after a while it doesn't break down!

  • Two Identical forms on the same JSP page.???

    Hi want to have two identical submit forms on the same form but for some reason a get a javascript error when i add the second form to the JSP page... can you help me...

    I assume you meant "two identical submit buttons", instead of "two identical submit forms". Seeing your description of the problem, I believe you can reproduce it with a pure .html page, that is, a page containing not JSP code. So it is not a problem in JSP domain proper.
    I was going to direct you to the Technologies>>Internet>>Dynamic Services forum at
    http://forums.oracle.com/forums/thread.jsp?forum=95
    Then I found you have posted the same question as thread 298169 there.

  • Connection to data store on host MYSQL failed

    We have observed multiple occurrence of below errors on the 6 App-V servers (default server group).
    <ServerName> 3796 9044 SW_ServerAuthenticationTask::Authorize - "Default Provider" <UserID> - 2 41472 "Module execution failed."
    <ServerName>nPool::Reconnect - "Default Provider" <UserID> - 2 41543 "Connection to  data store on host MYSQL failed.
    APPV Server details:
    APPV Server 4.5.3.19480
    The issue is been there for some time and we seen these error on the SFT-SERVER log now and then.Though the error is reported in the APP-V log but we have not seen any issue accessing any APPV application during the duration.
    Could someone suggest solution to resolve the issue.

    Do all your servers face this issue? They are load balanced I suppose?
    Check those servers if the App-V management Server service is running and that the firewall doesn't block anything. If that's not the case, try to give the machine account of those servers full control for Share/NTFS on the content-share.
    If that does not work, open a ticket with MS.

Maybe you are looking for