| Précédent | Table des matière | Suivant |
![]() | ![]() |
The big problem on Linux-Alpha is that there are still some problems with
threads in glibc on this platform. You should start by getting the
newest glibc version you can find.
Note that before you run any programs that use threads (like mysqld,
thr_alarm or thr_lock), you should raise the shared memory
limit (with ulimit). The MySQL benchmarks are known to fail
if you forget to do this!
Configure MySQL with the following command:
shell> CC=gcc CCFLAGS="-Dalpha_linux_port" \
CXX=gcc CXXFLAGS="-O3 -Dalpha_linux_port -felide-constructors -fno-exceptions -fno-rtti" \
./configure --prefix=/usr/local/mysql
Try to compile mysys/thr_lock and mysys/thr_alarm.
Test that these programs work! (Invoke each one with no arguments.
Each should end with test_succeeded if everything
was okay.)
After installing MySQL, uncomment the ulimit command in
safe_mysqld and add options to increase shared memory.
Note that Linux-Alpha is still an alpha-quality platform for MySQL.
With the newest glibc, you have a very good chance of it working.
If you have problems with signals (MySQL dies unexpectedly under high load) you may have found an OS bug with threads and signals. In this case you can tell MySQL not to use signals by configuring with:
shell> CFLAGS=-DDONT_USE_THR_ALARM \
CXXFLAGS=-DDONT_USE_THR_ALARM \
./configure ...
This doesn't affect the performance of MySQL, but has the side
effect that you can't kill clients that are ``sleeping'' on a connection with
mysqladmin kill or mysqladmin shutdown. Instead, the client
will die when it issues its next command.
![]() | Table des matières | ![]() |
| Précédent | ![]() | Suivant |