Showing entries 101 to 110 of 301
« 10 Newer Entries | 10 Older Entries »
Displaying posts with tag: PlanetMySQL (english) (reset)
PHP: 150 performance tuning screws for mysqlnd

Yes, 150 means we added some 30 performance statistics to the MySQL native driver for PHP (mysqlnd) since monday. The new statistics are explained in three words: counting COM_* commands. COM_* commands refers to the command packets of the MySQL client server protocol. For example, COM_QUERY is used to execute nonprepared SQL statements.

Please check the earlier blog postings on how to use and access the statistics: PHP: 59 tuning screws for mysqlnd, PHP: 120 tuning screws for mysqlnd. The information given in those articles will find its way into the PHP and MySQL manual. The MySQL documentation team is working on an …

[Read more]
PHP: 120 tuning screws for mysqlnd

The MySQL native driver for PHP (mysqlnd) is capable of collecting some 120 performance statistics. This is about twice as much as it was when I blogged about the 59 tuning screws for mysqlnd. While the basics have not not changed and the API calls for accessing the data remained the same (see previous posting) the new figures have never been described before.

The figures are for those of you who want to squeeze the last out of the PHP. Many of the statistics have been written for those who have developed mysqlnd and not for PHP users. The data is certainly still of interest for PHP experts but let me stress out again that it is for experts.

Scope

Statistics are either aggregated on on a per-connection or per-process basis. Changes to per-connection statistics also change the corresponding …

[Read more]
PHP: 120 tuning screws for mysqlnd

The MySQL native driver for PHP (mysqlnd) is capable of collecting some 120 performance statistics. This is about twice as much as it was when I blogged about the 59 tuning screws for mysqlnd. While the basics have not not changed and the API calls for accessing the data remained the same (see previous posting) the new figures have never been described before.

The figures are for those of you who want to squeeze the last out of the PHP. Many of the statistics have been written for those who have developed mysqlnd and not for PHP users. The data is certainly still of interest for PHP experts but let me stress out again that it is for experts.

Scope

Statistics are either aggregated on on a per-connection or per-process basis. Changes to per-connection statistics also change the corresponding …

[Read more]
The big POINTS in life

How large can a column of the data type POINT be: 10 bytes, 100 bytes, 1k, 10k? No… think Enterprise! PHP will allocate 4GB of RAM if you use the Prepared Statements of ext/mysqli and the MySQL Client Library (AKA libmysql) to fetch a POINT column. Of course, the MySQL native driver for PHP (mysqlnd) does better!

To understand why ext/mysqli can allocate up to 4 GB of RAM to fetch a POINT column we need to have a look at the MySQL C API. PHP itself is written in C and in a way ext/mysqli is just a plain vanilla C API client application. The C API is provided by the MySQL Client Library which has been called "libmysql" in the past. The MySQL Client Library implements the MySQL Client Server Protocol. The MySQL native driver for PHP (mysqlnd) is an alternative implementation of the MySQL Client Server Protocol and it is part of PHP source code as of PHP 5.3. If that is a new to you, please have a look …

[Read more]
The big POINTS in life

How large can a column of the data type POINT be: 10 bytes, 100 bytes, 1k, 10k? No… think Enterprise! PHP will allocate 4GB of RAM if you use the Prepared Statements of ext/mysqli and the MySQL Client Library (AKA libmysql) to fetch a POINT column. Of course, the MySQL native driver for PHP (mysqlnd) does better!

To understand why ext/mysqli can allocate up to 4 GB of RAM to fetch a POINT column we need to have a look at the MySQL C API. PHP itself is written in C and in a way ext/mysqli is just a plain vanilla C API client application. The C API is provided by the MySQL Client Library which has been called "libmysql" in the past. The MySQL Client Library implements the MySQL Client Server Protocol. The MySQL native driver for PHP (mysqlnd) is an alternative implementation of the MySQL Client Server Protocol and it is part of PHP source code as of PHP 5.3. If that is a new to you, please have a look …

[Read more]
MySQL Connector for OpenOffice.org is GA

The first production version of the MySQL Connector for OpenOffice.org has been released. You can download it from http://extensions.services.openoffice.org/project/mysql_connector. The driver is implemented as an OpenOffice.org extension and thus it is very easy to install. The driver can be used in OpenOffice.org 3.1.1 and the upcoming OpenOffice.org 3.2 to connect to MySQL 5.1 or newer. Installation and first steps are described on http://wiki.services.openoffice.org/wiki/Database/Drivers/MySQL_Native/1.0.

The driver offers the following advantages over MySQL Connector/ODBC and MySQL Connector/J:

  • Easy installation through the OpenOffice.org Extension Manager
  • Seamless integration into OpenOffice.org
[Read more]
MySQL Connector for OpenOffice.org is GA

The first production version of the MySQL Connector for OpenOffice.org has been released. You can download it from http://extensions.services.openoffice.org/project/mysql_connector. The driver is implemented as an OpenOffice.org extension and thus it is very easy to install. The driver can be used in OpenOffice.org 3.1.1 and the upcoming OpenOffice.org 3.2 to connect to MySQL 5.1 or newer. Installation and first steps are described on http://wiki.services.openoffice.org/wiki/Database/Drivers/MySQL_Native/1.0.

The driver offers the following advantages over MySQL Connector/ODBC and MySQL Connector/J:

  • Easy installation through the OpenOffice.org Extension Manager
  • Seamless integration into OpenOffice.org
[Read more]
Connector/C++: 1.1.0 uses Boost

Andrey mentioned it long ago: MySQL Connector/C++ 1.1.0 makes use of some Boost components. The change impacts those who compile the MySQL driver for C++ from source. You need to have Boost 1.34.0 or newer installed on your build system. Users of a binary distribution do not need to take any action. Boost is not required when using the pre-compiled binaries. Nor is Boost needed to run client applications that make use of Connector/C++.

Boost is a highly regarded cross-platform library for C++ development used by many projects, for example OpenOffice.org. Some parts of Boost are included in the C++ Standards Committee’s Library Technical Report (TR1) and will be in the new C++0x Standard. Several other parts are either additions to TR1 or proposed for …

[Read more]
Connector/C++: 1.1.0 uses Boost

Andrey mentioned it long ago: MySQL Connector/C++ 1.1.0 makes use of some Boost components. The change impacts those who compile the MySQL driver for C++ from source. You need to have Boost 1.34.0 or newer installed on your build system. Users of a binary distribution do not need to take any action. Boost is not required when using the pre-compiled binaries. Nor is Boost needed to run client applications that make use of Connector/C++.

Boost is a highly regarded cross-platform library for C++ development used by many projects, for example OpenOffice.org. Some parts of Boost are included in the C++ Standards Committee’s Library Technical Report (TR1) and will be in the new C++0x Standard. Several other parts are either additions to TR1 or proposed for …

[Read more]
Connector/C++: 1.1.0 offers run-time dynamic linking of libmysql

From 1.1.0 on, Connector/C++ can optionally use run-time dynamic linking to access the MySQL Client Library (AKA libmysql). If you make use of this new feature, it will not only change the application binary interface (ABI) but also has some impact on your client applications. The new expert setting is not enabled by default. By default, you will not notice any differences.

The next version of MySQL Connector/C++ will be numbered 1.1.0. 1.1.0 marks the successful end of the first year of development. The driver finally offers everything needed by its two "internal customers". Also, feedback from MySQL Workbench and Connector/OpenOffice.org and the bug inflow demonstrated the maturity that has been reached making it a logical step to bump up the version number.

While MySQL Workbench has been happy with the feature set for a while, we implemented a couple of changes in 1.1.0 to also …

[Read more]
Showing entries 101 to 110 of 301
« 10 Newer Entries | 10 Older Entries »