Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Software-update: MySQL 4.1.8

MySQL mini logo De populaire open source SQL-database MySQL heeft enkele dagen geleden een nieuwe release mogen beleven. Het gaat om versie 4.1.8 en deze kan voor diverse besturingssystemen vanaf deze pagina worden gedownload. De ontwikkelaars hebben de volgende lange lijst van veranderingen aangebracht in deze release:

Functionality added or changed:
  • For ALTER DATABASE, the database name now can be omitted to apply the change to the default database.
  • Added WITH CONSISTENT SNAPSHOT clause to START TRANSACTION to begin a transaction with a consistent read.
  • Added --order-by-primary to mysqldump, to sort each table's data in a dump file. This may be useful when dumping a MyISAM table which will be loaded into an InnoDB table. Dumping a MyISAM table with this option is considerably slower than without.
  • InnoDB: Do not periodically write SHOW INNODB STATUS information to a temporary file unless the configuration option innodb_status_file=1 is set.
  • InnoDB: Commit after every 10,000 copied rows when executing ALTER TABLE. This makes it much faster to recover from an aborted ALTER TABLE or OPTIMIZE TABLE.
  • FULLTEXT index block size is changed to be 1024 instead of 2048.
  • Added --disable-log-bin option to mysqlbinlog. Using this option you can disable binary logging for the statements produced by mysqlbinlog. That is, mysqlbinlog --disable-log-bin | mysql won't write any statements to the MySQL server binary log.
  • The --master-data option for mysqldump now takes an optional argument of 1 or 2 to produce a non-commented or commented CHANGE MASTER TO statement. The default is 1 for backward compatibility.
  • mysqldump --single-transaction --master-data now is able to take an online (non-blocking) dump of InnoDB and report the corresponding binary log coordinates. This makes a backup suitable for point-in-time recovery, roll-forward or replication slave creation. See section 8.8 The mysqldump Database Backup Program.
  • Added --lock-all-tables to mysqldump to lock all tables by acquiring a global read lock.
  • Added --hex-blob option to mysqldump for dumping binary string columns using hexadecimal notation.
  • Added mysql_hex_string() C API function that hex-encodes a string.
  • In the normal log MySQL now prints the logposition for Binlog Dump requests.
  • Added [mysql_cluster] section to `my.cnf' file for configuration settings specific to MySQL Cluster. ndb-connectstring variable moved here.
  • A connection doing a rollback will now display "Rolling back" in the State column of SHOW PROCESSLIST.
  • mysqlbinlog now prints an informative commented line (thread id, timestamp, server id, etc) before each LOAD DATA INFILE, like it already does for other queries; unless --short-form is used.
Bugs fixed:
  • Fixed incorrect referencing to column by name from subquery to outer query in case of using temporary table by outer query and placing subquery in the WHERE clause. (Bug #7079)
  • Fixed a bug in authentication code that allowed a malicious user to crash the server with specially crafted packets (using a modified client library). (Bug #7187)
  • Fixed a crashing bug in a string function LEFT, when this function is part of the expression which is used as GROUP BY field. (Bug #7101)
  • Fixed bug which caused MySQL to require privileges on system time zone description tables for implicit access to them (i.e. if one set time_zone variable or used CONVERT_TZ() function) in case when some table-level or column-level privileges existed. (Bug #6765)
  • mysql_stmt_data_seek(stmt,0) will now rewind a counter and enable that buffered rows can be re-fetched on the client side. (Bug #6996)
  • Fixed an insufficient privilege check in SHOW CREATE TABLE command. (Bug #7043)
  • Fixed a rare memory corruption (that resulted in a crash) in MATCH ... AGAINST on columns that use multi-byte character sets. (Bug #6269)
  • Fixed NULL processing in ALL/SOME subqueries. (Bug #6247)
  • Fixed execution complex queries with subqueries. (Bug #6406, Bug #6841)
  • Fixed initialization of some internal structures for first execution. (Bug #6517)
  • Backported a fix for the fulltext interface from MySQL 5.0. (Bug #6523)
  • Fixed NULL value handling in case of empty results in subqueries. (Bug #6806)
  • Prevent adding CREATE TABLE .. SELECT query to the binary log when the insertion of new records partially failed. (Bug #6682)
  • INSERT ... SELECT no longer reports spurious "column truncated" warnings (Bug #6284)
  • Fixed a bug that could cause "Record has changed since last read in table" error message in some queires on HEAP tables that contain only one row. (Bug #6748)
  • mysqld_safe was in many cases ignoring any --no-defaults, --defaults-file, or --defaults-extra-file arguments. Those arguments are now honored, and this may change what options are passed to mysqld in some installations.
  • The server was interpreting CHAR BINARY and VARCHAR BINARY columns from 4.0 tables as having the BINARY and VARBINARY data types. Now they are interpreted as CHAR and VARCHAR columns that have the binary collation of the column's character set. (This is the same way that CHAR BINARY and VARCHAR BINARY are handled for new tables created in 4.1.)
  • Fixed spurious "duplicate key" error from REPLACE or INSERT ... ON DUPLICATE KEY UPDATE statements performing multiple-row insert in the table that had unique and fulltext indexes. (Bug #6784)
  • Fixed a bug in execution of subqueries in SET and DO statements which caused wrong results to be returned from subsequent queries. (Bug #6462)
  • Fixed a bug which allowed server to accept datetime values with wrong year part. Also now server will perform same checks for datetime values passed through MYSQL_TIME structure as for datetime values passed as strings. (Bug #6266)
  • Fixed a bug with INSERT for a table with FULLTEXT indexes. Under rare circumstances, this could result in a corrupted table if words of different lengths may be considered equal. This is possible in some collations, for example, in utf8_general_ci or latin1_german2_ci. (Bug #6265)
  • InnoDB: Do not intentionally crash `mysqld' if the buffer pool is exhausted by the lock table; return error 1206 instead. Do not intentionally crash `mysqld' if we cannot allocate the memory for the InnoDB buffer pool. (Bug #6817) (Bug #6827)
  • InnoDB: Let InnoDB's FOREIGN KEY parser to remove the latin1 character 0xA0 from the end of an unquoted identifier. The EMS MySQL Manager in ALTER TABLE adds that character after a table name, which caused error 121 when we tried to add a new constraint.
  • InnoDB: Refuse to open new-style tables created with MySQL 5.0.3 or later. (Bug #7089)
  • InnoDB: Do not call rewind() when displaying SHOW INNODB STATUS information on stderr.
  • InnoDB: Made the foreign key parser better aware of quotes. (Bug #6340)
  • InnoDB: If one used INSERT IGNORE to insert several rows at a time, and the first inserts were ignored because of a duplicate key collision, then InnoDB in a replication slave assigned AUTO_INCREMENT values 1 bigger than in the master. This broke the MySQL replication. (Bug #6287)
  • InnoDB: Fixed a bug: InnoDB ignored in innodb_data_file_path the max specification in :autoextend:max:2000M. This bug was introduced in 4.1.1.
  • InnoDB: Fixed a bug: innodb_locks_unsafe_for_binlog still uses next-key locking (Bug #6747). InnoDB used next-key locking when record matched completely to search tuple. This unnecessary next-key locking is now removed when innodb_locks_unsafe_for_binlog option is used.
  • InnoDB: Fix two hangs: FOREIGN KEY constraints treated table and database names as case-insensitive. RENAME TABLE t TO T would hang in an endless loop if t had a foreign key constraint defined on it. Fix also a hang over the dictionary mutex that would occur if one tried in ALTER TABLE or RENAME TABLE to create a foreign key constraint name that collided with another existing name. (Bug #3478)
  • If STMT_ATTR_UPDATE_MAX_LENGTH is set for a prepared statement, mysql_stmt_store_result() will update field->max_length for numeric columns as well. (Bug#6096)
  • Prepared statements now handle zerofill when converting integer to string.
  • Fixed crash when a call to mysql_stmt_store_result() occurred without a preceding call to mysql_stmt_bind_result().
  • Fixed crash in prepared statements when using SELECT * FROM t1 NATURAL JOIN t2....
  • Fixed crash in prepared statements when using SELECT ... PROCEDURE.
  • Fixed crash in prepared statements when using subqueries.
  • GROUP_CONCAT(...ORDER BY) when used with prepared statements gave wrong sorting order. CREATE TABLE created_table didn't signal when table was created. This could cause a DROP TABLE created_table in another thread to wait "forever".
  • Server warnings now are reset when you execute a prepared statement.
  • Improved performance of identifier comparisons (if many tables or columns are specified).
  • OPTIMIZE TABLE, REPAIR TABLE, and ANALYZE TABLE are now replicated without any error code in the binary log. (Bug #5551)
  • LOAD DATA INFILE now works with option replicate-rewrite-db. (Bug #6353)
  • Fixed a bug which caused a crash when only the slave I/O thread was stopped and started. (Bug #6148)
  • Changed semantics of CREATE/ALTER/DROP DATABASE statements so that replication of CREATE DATABASE is possible when using --binlog-do-db and --binlog-ignore-db. (Bug #6391)
  • If a connection had an open transaction but had done no updates to transactional tables (for example if had just done a SELECT FOR UPDATE then executed a non-transactional update, that update automatically committed the transaction (thus releasing InnoDB's row-level locks etc). (Bug #5714)
  • If a connection was interrupted by a network error and did a rollback, the network error code got stored into the BEGIN and ROLLBACK binary log events; that caused superfluous slave stops. (Bug #6522)
  • A sequence of BEGIN (or SET AUTOCOMMIT=0), FLUSH TABLES WITH READ LOCK, transactional update, COMMIT, FLUSH TABLES WITH READ LOCK could hang the connection forever and possibly the MySQL server itself. This happened for example when running the innobackup script several times. (Bug #6732)
  • mysqlbinlog did not print SET PSEUDO_THREAD_ID statements in front of LOAD DATA INFILE statements inserting into temporary tables, thus causing potential problems when rolling forward these statements after restoring a backup. (Bug #6671)
Versienummer 4.1.8
Besturingssystemen Windows 9x, Windows NT, Windows 2000, Linux, BSD, Windows XP, macOS, Solaris, UNIX
Website MySQL
Licentietype GPL

Door Bart van Klaveren

Downloads en Best Buy Guide

18-12-2004 • 14:51

6 Linkedin Google+

Submitter: Mac_Cain13

Bron: MySQL


Meer historie

Reacties (6)

Wijzig sortering
idd, dit is een lange lijst. voor 1 poduct dan, als je cangelogs van operating systems gaat lezen :P Dan wens ik je alvast 2 fijne verjaardagen toe.
Maar het is wel een interessante changelist.
Added --lock-all-tables to mysqldump to lock all tables by acquiring a global read lock.
Is handig voor mensen die backups willen maken. (ik weet in ieder geval dat ik er vaak gebruik van zal gaan maken)
InnoDB: Do not intentionally crash `mysqld' if the buffer pool is exhausted by the lock table; return error 1206 instead. Do not intentionally crash `mysqld' if we cannot allocate the memory for the InnoDB buffer pool. (Bug #6817) (Bug #6827)
Dat is voor sommigen ook wel erg handig (mensen met verkeerde ingestelde geheugen values)...

Dat zijn maar 2 voorbeelden van dingen die deze versie heel wat beter maken dan eerdere versies.
Voor 1 januari gaat MySQL 4.1 op al onze hosting servers draaien, ik denk dat het na zoveel releases wel geschikt is. En dat wijst onze test ook wel uit op een testserver.
Ik ben benieuwd hoeveel mensen de 4.1 tree inmiddels echt als stable beschouwen...
Denk dat ie op zich al wel als stable gezien kan en mag worden...enige vervelende is dat de distro makers bijna zonder uitzondering nog op 3.23 hangen...zolang die niet naar 4.x gaan denk ik dat de meeste mysql's nog 3.23 blijven...
Heb zelf op de meeste servers al 4.x draaien. intel compiled versie :)
Ik kan het fout hebben maar er is alleen v4.1.7 beschikbaar via de opgegegven link.
Dan heb je inderdaad fout ;) .

Op dit item kan niet meer gereageerd worden.

Apple iPhone XS Red Dead Redemption 2 LG W7 Google Pixel 3 XL OnePlus 6T FIFA 19 Samsung Galaxy S10 Google Pixel 3

Tweakers vormt samen met Tweakers Elect, Hardware.Info, Autotrack, Nationale Vacaturebank en Intermediair de Persgroep Online Services B.V.
Alle rechten voorbehouden © 1998 - 2018 Hosting door True