Hello.


>innodb_log_file_size=10M

>innodb_log_buffer_size=1M



These variables have too small values, increase them. Follow

other recomendations from:

  http://dev.mysql.com/doc/refman/5.0/en/innodb-configuration.html







Andrew stolarz <[EMAIL PROTECTED]> wrote:

>

>hello, here are my current setttings:

>

># MySQL Server Instance Configuration File

># ----------------------------------------------------------------------

># Generated by the MySQL Server Instance Configuration Wizard

>#

>#

># Installation Instructions

># ----------------------------------------------------------------------

>#

># On Linux you can copy this file to /etc/my.cnf to set global options,

># mysql-data-dir/my.cnf to set server-specific options

># (@localstatedir@ for this installation) or to

># ~/.my.cnf to set user-specific options.

>#

># On Windows you should keep this file in the installation directory

># of your server (e.g. C:\Program Files\MySQL\MySQL Server 4.1). To

># make sure the server reads the config file use the startup option

># "--defaults-file".

>#

># To run run the server from the command line, execute this in a

># command line shell, e.g.

># mysqld --defaults-file="C:\Program Files\MySQL\MySQL Server 4.1\my.ini"

>#

># To install the server as a Windows service manually, execute this in a

># command line shell, e.g.

># mysqld --install MySQL41 --defaults-file="C:\Program Files\MySQL\MySQL

>Server 4.1\my.ini"

>#

># And then execute this in a command line shell to start the server, e.g.

># net start MySQL41

>#

>#

># Guildlines for editing this file

># ----------------------------------------------------------------------

>#

># In this file, you can use all long options that the program supports.

># If you want to know the options a program supports, start the program

># with the "--help" option.

>#

># More detailed information about the individual options can also be

># found in the manual.

>#

>#

># CLIENT SECTION

># ----------------------------------------------------------------------

>#

># The following options will be read by MySQL client applications.

># Note that only client applications shipped by MySQL are guaranteed

># to read this section. If you want your own MySQL client program to

># honor these values, you need to specify it as an option during the

># MySQL client library initialization.

>#

>[client]

>

>port=3306

>

>[mysql]

>

>default-character-set=latin1

>

>

># SERVER SECTION

># ----------------------------------------------------------------------

>#

># The following options will be read by the MySQL Server. Make sure that

># you have installed the server correctly (see above) so it reads this

># file.

>#

>[mysqld]

>

># The TCP/IP Port the MySQL Server will listen on

>port=3306

>

>

>#Path to installation directory. All paths are usually resolved relative to

>this.

>basedir="C:/Program Files/MySQL/MySQL Server 5.0/"

>

>#Path to the database root

>datadir="C:/Program Files/MySQL/MySQL Server 5.0/Data/"

>

># The default character set that will be used when a new schema or table is

># created and no character set is defined

>default-character-set=latin1

>

># The default storage engine that will be used when create new tables when

>default-storage-engine=innodb

>

># Set the SQL mode to strict

>sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

>

># The maximum amount of concurrent sessions the MySQL server will

># allow. One of these connections will be reserved for a user with

># SUPER privileges to allow the administrator to login even if the

># connection limit has been reached.

>max_connections=5

>

># Query cache is used to cache SELECT results and later return them

># without actual executing the same query once again. Having the query

># cache enabled may result in significant speed improvements, if your

># have a lot of identical queries and rarely changing tables. See the

># "Qcache_lowmem_prunes" status variable to check if the current value

># is high enough for your load.

># Note: In case your tables change very often or if your queries are

># textually different every time, the query cache may result in a

># slowdown instead of a performance improvement.

>query_cache_size=0

>

># The number of open tables for all threads. Increasing this value

># increases the number of file descriptors that mysqld requires.

># Therefore you have to make sure to set the amount of open files

># allowed to at least 4096 in the variable "open-files-limit" in

># section [mysqld_safe]

>table_cache=256

>

># Maximum size for internal (in-memory) temporary tables. If a table

># grows larger than this value, it is automatically converted to disk

># based table This limitation is for a single table. There can be many

># of them.

>tmp_table_size=9M

>

>

># How many threads we should keep in a cache for reuse. When a client

># disconnects, the client's threads are put in the cache if there aren't

># more than thread_cache_size threads from before.  This greatly reduces

># the amount of thread creations needed if you have a lot of new

># connections. (Normally this doesn't give a notable performance

># improvement if you have a good thread implementation.)

>thread_cache_size=8

>

>#*** MyISAM Specific options

>

># The maximum size of the temporary file MySQL is allowed to use while

># recreating the index (during REPAIR, ALTER TABLE or LOAD DATA INFILE.

># If the file-size would be bigger than this, the index will be created

># through the key cache (which is slower).

>myisam_max_sort_file_size=100G

>

># If the temporary file used for fast index creation would be bigger

># than using the key cache by the amount specified here, then prefer the

># key cache method.  This is mainly used to force long character keys in

># large tables to use the slower key cache method to create the index.

>myisam_max_extra_sort_file_size=100G

>

># If the temporary file used for fast index creation would be bigger

># than using the key cache by the amount specified here, then prefer the

># key cache method.  This is mainly used to force long character keys in

># large tables to use the slower key cache method to create the index.

>myisam_sort_buffer_size=256M

>

># Size of the Key Buffer, used to cache index blocks for MyISAM tables.

># Do not set it larger than 30% of your available memory, as some memory

># is also required by the OS to cache rows. Even if you're not using

># MyISAM tables, you should still set it to 8-64M as it will also be

># used for internal temporary disk tables.

>key_buffer_size=800M

>

># Size of the buffer used for doing full table scans of MyISAM tables.

># Allocated per thread, if a full scan is needed.

>read_buffer_size=64K

>read_rnd_buffer_size=256K

>

># This buffer is allocated when MySQL needs to rebuild the index in

># REPAIR, OPTIMZE, ALTER table statements as well as in LOAD DATA INFILE

># into an empty table. It is allocated per thread so be careful with

># large settings.

>sort_buffer_size=256K

>

>

>#*** INNODB Specific options ***

>

>

># Use this option if you have a MySQL server with InnoDB support enabled

># but you do not plan to use it. This will save memory and disk space

># and speed up some things.

>#skip-innodb

>

># Additional memory pool that is used by InnoDB to store metadata

># information.  If InnoDB requires more memory for this purpose it will

># start to allocate it from the OS.  As this is fast enough on most

># recent operating systems, you normally do not need to change this

># value. SHOW INNODB STATUS will display the current amount used.

>innodb_additional_mem_pool_size=2M

>

># If set to 1, InnoDB will flush (fsync) the transaction logs to the

># disk at each commit, which offers full ACID behavior. If you are

># willing to compromise this safety, and you are running small

># transactions, you may set this to 0 or 2 to reduce disk I/O to the

># logs. Value 0 means that the log is only written to the log file and

># the log file flushed to disk approximately once per second. Value 2

># means the log is written to the log file at each commit, but the log

># file is only flushed to disk approximately once per second.

>#innodb_flush_log_at_trx_commit=1

>

># The size of the buffer InnoDB uses for buffering log data. As soon as

># it is full, InnoDB will have to flush it to disk. As it is flushed

># once per second anyway, it does not make sense to have it very large

># (even with long transactions).

>#innodb_log_buffer_size=1M

>

># InnoDB, unlike MyISAM, uses a buffer pool to cache both indexes and

># row data. The bigger you set this the less disk I/O is needed to

># access data in tables. On a dedicated database server you may set this

># parameter up to 80% of the machine physical memory size. Do not set it

># too large, though, because competition of the physical memory may

># cause paging in the operating system.  Note that on 32bit systems you

># might be limited to 2-3.5G of user level memory per process, so do not

># set it too high.

>innodb_buffer_pool_size=766M

>

># Size of each log file in a log group. You should set the combined size

># of log files to about 25%-100% of your buffer pool size to avoid

># unneeded buffer pool flush activity on log file overwrite. However,

># note that a larger logfile size will increase the time needed for the

># recovery process.

>#innodb_log_file_size=10M

>

># Number of threads allowed inside the InnoDB kernel. The optimal value

># depends highly on the application, hardware as well as the OS

># scheduler properties. A too high value may lead to thread thrashing.

>innodb_thread_concurrency=8

>#Use ANSI SQL syntax instead of MySQL syntax.

>#ansi

>#Size of tree cache used in bulk insert optimisation. Note that this is a

>limit per thread!

>bulk_insert_buffer_size=256M

>#Size of each log file in a log group in megabytes. Sensible values range

>from 1M to 1/n-th of the size of the buffer pool specified below, where n is

>the number of log files in the group. The larger the value, the less

>checkpoint flush activity is needed in the buffer pool, saving disk I/O. But

>larger log files also mean that recovery will be slower in case of a crash.

>The combined size of log files must be less than 4 GB on 32-bit computers.

>The default is 5M.

>innodb_log_file_size=10M

>#The size of the buffer which InnoDB uses to write log to the log files on

>disk. Sensible values range from 1M to 8M. A big log buffer allows large

>transactions to run without a need to write the log to disk until the

>transaction commit. Thus, if you have big transactions, making the log

>buffer big will save disk I/O.

>innodb_log_buffer_size=1M

>#Specifies when log files are flushed to disk.

>innodb_flush_log_at_trx_commit=1

>

>

>

>On 11/24/05, Gleb Paharenko <[EMAIL PROTECTED]> wrote:

>>

>> Hello.

>>

>>

>>

>> Without seeing at least your configuration it is difficult to say

>>

>> what's going on. Please, provide your config file.

>>

>>

>>

>>

>>

>> Andrew stolarz <[EMAIL PROTECTED]> wrote:

>>

>> >When I do a bulk import into a MyIsam engine database, I can reach about

>> 2-3

>>

>> >thousand records imported per second.

>>

>> >

>>

>> >However when I use the InnoDB engine, I am only importing about 30-50

>>

>> >records per second?

>>

>> >

>>

>> >Am I missing something here?

>>

>> >

>>

>> >its a P4 3 Ghz machine with 1024mb ram. running MySQL 5.0

>>

>> >

>>

>> >thanks

>>

>> >

>>

>> >Andrew

>>

>>



-- 
For technical support contracts, goto https://order.mysql.com/?ref=ensita
This email is sponsored by Ensita.NET http://www.ensita.net/
   __  ___     ___ ____  __
  /  |/  /_ __/ __/ __ \/ /    Gleb Paharenko
 / /|_/ / // /\ \/ /_/ / /__   [EMAIL PROTECTED]
/_/  /_/\_, /___/\___\_\___/   MySQL AB / Ensita.NET
       <___/   www.mysql.com




-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to