text:
A.1 How to Determine What is Causing a Problem
When you run into a problem, the first thing you should do is to find out which program or piece of equipment is causing it. If you have one of the following symptoms, then it is probably a hardware problem (such as memory, motherboard, CPU, or hard disk) or kernel problem:
- The keyboard doesn't work. This can normally be checked by pressing the Caps Lock key. If the Caps Lock light doesn't change, you have to replace your keyboard. (Before doing this, you should try to restart your computer and check all cables to the keyboard.)
- The mouse pointer doesn't move.
- The machine doesn't answer to a remote machine's pings.
- Other programs that are not related to MySQL don't behave correctly.
- Your system restarted unexpectedly. (A faulty user-level program should never be able to take down your system.)
In this case, you should start by checking all your cables and run some diagnostic tool to check your hardware! You should also check whether there are any patches, updates, or service packs for your operating system that could likely solve your problem. Check also that all your libraries (such as glibc) are up to date.
It's always good to use a machine with ECC memory to discover memory problems early.
If your keyboard is locked up, you may be able to recover by logging in to your machine from another machine and executing kbd_mode -a.
Please examine your system log file (/var/log/messages or similar) for reasons for your problem. If you think the problem is in MySQL, you should also examine MySQL's log files. See Section 4.8, "The MySQL Log Files."
If you don't think you have hardware problems, you should try to find out which program is causing problems. Try using top, ps, Task Manager, or some similar program, to check which program is taking all CPU or is locking the machine.
Use top, df, or a similar program to check whether you are out of memory, disk space, file descriptors, or some other critical resource.
If the problem is some runaway process, you can always try to kill it. If it doesn't want to die, there is probably a bug in the operating system.
If after you have examined all other possibilities and you have concluded that the MySQL server or a MySQL client is causing the problem, it's time to create a bug report for our mailing list or our support team. In the bug report, try to give a very detailed description of how the system is behaving and what you think is happening. You should also state why you think that MySQL is causing the problem. Take into consideration all the situations in this chapter. State any problems exactly how they appear when you examine your system. Use the "copy and paste" method for any output and error messages from programs and log files.
Try to describe in detail which program is not working and all symptoms you see. We have in the past received many bug reports that state only "the system doesn't work." This doesn't provide us with any information about what could be the problem.
If a program fails, it's always useful to know the following information:
Has the program in question made a segmentation fault (did it dump core)?
Is the program taking up all available CPU time? Check with top. Let the program run for a while, it may simply be evaluating something computationally intensive.
If the mysqld server is causing problems, can you get any response from it with mysqladmin -u root ping or mysqladmin -u root processlist?
What does a client program say when you try to connect to the MySQL server? (Try with mysql, for example.) Does the client jam? Do you get any output from the program?
When sending a bug report, you should follow the outline described in Section 188.8.131.52, "Asking Questions or Reporting Bugs."
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.
{mospagebreak title=Common Errors When Using MySQL Programs}
A.2 Common Errors When Using MySQL Programs
This section lists some errors that users frequently encounter when running MySQL programs. Although the problems show up when you try to run client programs, the solutions to many of the problems involves changing the configuration of the MySQL server.
A.2.1 Access denied
An Access denied error can have many causes. Often the problem is related to the MySQL accounts that the server allows client programs to use when connecting. See Section 4.4.8, "Causes of Access denied Errors." See Section 4.4.2, "How the Privilege System Works."
A.2.2 Can't connect to [local] MySQL server
A MySQL client on Unix can connect to the mysqld server in two different ways: By using a Unix socket file to connect through a file in the filesystem (default /tmp/mysql.sock), or by using TCP/IP, which connects through a port number. A Unix socket file connection is faster than TCP/IP, but can be used only when connecting to a server on the same computer. A Unix socket file is used if you don't specify a hostname or if you specify the special hostname localhost.
If the MySQL server is running on Windows 9x or Me, you can connect only via TCP/IP. If the server is running on Windows NT, 2000, or XP and is started with the –enable-named-pipe option, you can also connect with named pipes if you run the client on the host where the server is running. The name of the named pipe is MySQL by default. If you don't give a hostname when connecting to mysqld, a MySQL client first will try to connect to the named pipe. If that doesn't work, it will connect to the TCP/IP port. You can force the use of named pipes on Windows by using . as the hostname.
The error (2002) Can't connect to … normally means that there is no MySQL server running on the system or that you are using an incorrect Unix socket filename or TCP/IP port number when trying to connect to the server.
Start by checking whether there is a process named mysqld running on your server host. (Use ps on Unix or the Task Manager on Windows.) If there is no such process, you should start the server. See Section 2.4.4, "Starting and Troubleshooting the MySQL Server."
If a mysqld process is running, you can check it by trying the following commands. The port number or Unix socket filename might be different in your setup. host_ip represents the IP number of the machine where the server is running.
shell> mysqladmin version shell> mysqladmin variables shell> mysqladmin -h ´hostname´ version variables shell> mysqladmin -h ´hostname´ –port=3306 version shell> mysqladmin -h host_ip version shell> mysqladmin –protocol=socket –socket=/tmp/mysql.sock version
Note the use of backticks rather than forward quotes with the hostname command; these cause the output of hostname (that is, the current hostname) to be substituted into the mysqladmin command. If you have no hostname command or are running on Windows, you can manually type the hostname of your machine (without backticks) following the -h option. You can also try -h 127.0.0.1 to connect with TCP/IP to the local host.
Here are some reasons the Can't connect to local MySQL server error might occur:
mysqld is not running.
- You are running on a system that uses MIT-pthreads. If you are running on a system that doesn't have native threads, mysqld uses the MIT-pthreads package. See Section 2.1.1, "Operating Systems Supported by MySQL." However, not all MIT-pthreads versions support Unix socket files. On a system without socket file support, you must always specify the hostname explicitly when connecting to the server. Try using this command to check the connection to the server:
shell> mysqladmin -h ´hostname´ version
Someone has removed the Unix socket file that mysqld uses (/tmp/mysql.sock by default). For example, you might have a cron job that removes old files from the /tmp directory. You can always run mysqladmin version to check whether the Unix socket file that mysqladmin is trying to use really exists. The fix in this case is to change the cron job to not remove mysql.sock or to place the socket file somewhere else. See Section A.4.5, "How to Protect or Change the MySQL Socket File /tmp/mysql.sock."
You have started the mysqld server with the –socket=/path/to/socket option, but forgotten to tell client programs the new name of the socket file. If you change the socket pathname for the server, you must also notify the MySQL clients. You can do this by providing the same –socket option when you run client programs. See Section A.4.5, "How to Protect or Change the MySQL Socket File /tmp/mysql.sock."
You are using Linux and one server thread has died (dumped core). In this case, you must kill the other mysqld threads (for example, with kill or with the mysql_zap script) before you can restart the MySQL server. See Section A.4.2, "What to Do If MySQL Keeps Crashing."
The server or client program might not have the proper access privileges for the directory that holds the Unix socket file or the socket file itself. In this case, you must either change the access privileges for the directory or socket file so that the server and clients can access them, or restart mysqld with a –socket option that specifies a socket filename in a directory where the server can create it and where client programs can access it.
If you get the error message Can't connect to MySQL server on some_host, you can try the following things to find out what the problem is:
Check whether the server is running on that host by executing telnet some_host 3306 and pressing the Enter key a couple of times. (3306 is the default MySQL port number. Change the value if your server is listening to a different port.) If there is a MySQL server running and listening to the port, you should get a response that includes the server's version number. If you get an error such as telnet: Unable to connect to remote host: Connection refused, then there is no server running on the given port.
If the server is running on the local host, try using mysqladmin -h localhost variables to connect using the Unix socket file. Verify the TCP/IP port number that the server is configured to listen to (it is the value of the port variable.)
Make sure that your mysqld server was not started with the –skip-networking option. If it was, you will not be able to connect to it using TCP/IP.
{mospagebreak title=Authentication Protocol}
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.
A.2.3 Client does not support authentication protocol
MySQL 4.1 and up uses an authentication protocol based on a password hashing algorithm that is incompatible with that used by older clients. If you upgrade the server to 4.1, attempts to connect to it with an older client may fail with the following message:
shell> mysql Client does not support authentication protocol requested by server; consider upgrading MySQL client
To solve this problem, you should use one of the following approaches:
Upgrade all client programs to use a 4.1.1 or newer client library.
When connecting to the server with a pre-4.1 client program, use an account that still has a pre-4.1-style password.
Reset the password to pre-4.1 style for each user that needs to use a pre-4.1 client program. This can be done using the SET PASSWORD statement and the OLD_PASSWORD() function:
mysql> SET PASSWORD FOR -> 'some_user'@'some_host' = OLD_PASSWORD('newpwd');
Alternatively, use UPDATE and FLUSH PRIVILEGES:
mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('newpwd') -> WHERE Host = 'some_host' AND User = 'some_user'; mysql> FLUSH PRIVILEGES;
Substitute the password you want to use for "newpwd" in the preceding examples. MySQL cannot tell you what the original password was, so you'll need to pick a new one.
Tell the server to use the older password hashing algorithm:
Start mysqld with the –old-passwords option.
Assign an old-format password to each account that has had its password updated to the longer 4.1 format. You can identify these accounts with the following query:
mysql> SELECT Host, User, Password FROM mysql.user -> WHERE LENGTH(Password) > 16;
For each account record displayed by the query, use the Host and User values and assign a password using the OLD_PASSWORD() function and either SET PASSWORD or UPDATE, as described earlier.
For additional background on password hashing and authentication, see Section 4.4.9, "Password Hashing in MySQL 4.1."
A.2.4 Password Fails When Entered Interactively
MySQL client programs prompt for a password when invoked with a –password or -p option that has no following password value:
shell> mysql -u user_name -p Enter password:
On some systems, you may find that your password works when specified in an option file or on the command line, but not when you enter it interactively at the Enter password: prompt. This occurs when the library provided by the system to read passwords limits password values to a small number of characters (typically eight). That is a problem with the system library, not with MySQL. To work around it, change your MySQL password to a value that is eight or fewer characters long, or put your password in an option file.
A.2.5 Host 'host_name' is blocked
If you get the following error, it means that mysqld has received many connect requests from the host 'host_name' that have been interrupted in the middle:
Host 'host_name' is blocked because of many connection errors. Unblock with 'mysqladmin flush-hosts'
The number of interrupted connect requests allowed is determined by the value of the max_connect_errors system variable. After max_connect_errors failed requests, mysqld assumes that something is wrong (for example, that someone is trying to break in), and blocks the host from further connections until you execute a mysqladmin flush-hosts command or issue a FLUSH HOSTS statement. See Section 4.2.3, "Server System Variables."
By default, mysqld blocks a host after 10 connection errors. You can adjust the value by starting the server like this:
shell> mysqld_safe –max_connect_errors=10000 &
If you get this error message for a given host, you should first verify that there isn't anything wrong with TCP/IP connections from that host. If you are having network problems, it will do you no good to increase the value of the max_connect_errors variable.
A.2.6 Too many connections
If you get a Too many connections error when you try to connect to the mysqld server, this means that all available connections already are used by other clients.
The number of connections allowed is controlled by the max_connections system variable. Its default value is 100. If you need to support more connections, you should restart mysqld with a larger value for this variable.
mysqld actually allows max_connections+1 clients to connect. The extra connection is reserved for use by accounts that have the SUPER privilege. By granting the SUPER privilege to administrators and not to normal users (who should not need it), an administrator can connect to the server and use SHOW PROCESSLIST to diagnose problems even if the maximum number of unprivileged clients already are connected.
The maximum number of connections MySQL can support depends on the quality of the thread library on a given platform. Linux or Solaris should be able to support 500-1000 simultaneous connections, depending on how much RAM you have and what your clients are doing.
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.
{mospagebreak title=Memory and Lost Connection}
A.2.7 Out of memory
If you issue a query using the mysql client program and receive an error like the following one, it means that mysql does not have enough memory to store the entire query result:
mysql: Out of memory at line 42, 'malloc.c' mysql: needed 8136 byte (8k), memory in use: 12481367 bytes (12189k) ERROR 2008: MySQL client ran out of memory
To remedy the problem, first check whether your query is correct. Is it reasonable that it should return so many rows? If not, correct the query and try again. Otherwise, you can invoke mysql with the –quick option. This causes it to use the mysql_use_result() C API function to retrieve the result set, which places less of a load on the client (but more on the server).
A.2.8 MySQL server has gone away
This section also covers the related Lost connection to server during query error.
The most common reason for the MySQL server has gone away error is that the server timed out and closed the connection. In this case, you normally get one of the following error codes (which one you get is operating system-dependent):
|Error Code
|The client couldn't send a question to the server.
|The client didn't get an error when writing to the server, but it didn't get a full answer (or any answer) to the question.
By default, the server closes the connection after eight hours if nothing has happened. You can change the time limit by setting the wait_timeout variable when you start mysqld. See Section 4.2.3, "Server System Variables."
If you have a script, you just have to issue the query again for the client to do an automatic reconnection.
You will also get an error if someone has killed the running thread with a KILL statement or a mysqladmin kill command.
Another common reason the MySQL server has gone away error occurs within an application program is that you tried to run a query after closing the connection to the server. This indicates a logic error in the application that should be corrected.
You can check whether the MySQL server died and restarted by executing mysqladmin version and examining the server's uptime. If the client connection was broken because mysqld crashed and restarted, you should concentrate on finding the reason for the crash. Start by checking whether issuing the query again kills the server again. See Section A.4.2, "What to Do If MySQL Keeps Crashing."
You can also get these errors if you send a query to the server that is incorrect or too large. If mysqld receives a packet that is too large or out of order, it assumes that something has gone wrong with the client and closes the connection. If you need big queries (for example, if you are working with big BLOB columns), you can increase the query limit by setting the server's max_allowed_packet variable, which has a default value of 1MB. You may also need to increase the maximum packet size on the client end. More information on setting the packet size is given in Section A.2.9, "Packet too large."
You will also get a lost connection if you are sending a packet 16MB or larger if your client is older than 4.0.8 and your server is 4.0.8 and above, or the other way around.
If you want to create a bug report regarding this problem, be sure that you include the following information:
Indicate whether or not the MySQL server died. You can find information about this in the server error log. See Section A.4.2, "What to Do If MySQL Keeps Crashing."
If a specific query kills mysqld and the tables involved were checked with CHECK TABLE before you ran the query, can you provide a reproducible test case?
What is the value of the wait_timeout system variable in the MySQL server? (mysqladmin variables gives you the value of this variable.)
Have you tried to run mysqld with the –log option to determine whether the problem query appears in the log?
See Section 220.127.116.11, "Asking Questions or Reporting Bugs."
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.
{mospagebreak title=Packet too Large}
A.2.9 Packet too large
A communication packet is a single SQL statement sent to the MySQL server or a single row that is sent to the client.
In MySQL 3.23, the largest possible packet is 16MB, due to limits in the client/server protocol. In MySQL 4.0.1 and up, the limit is 1GB.
When a MySQL client or the mysqld server receives a packet bigger than max_allowed_packet bytes, it issues a Packet too large error and closes the connection. With some clients, you may also get a Lost connection to MySQL server during query error if the communication packet is too large.
Both the client and the server have their own max_allowed_packet variable, so if you want to handle big packets, you must increase this variable both in the client and in the server.
If you are using the mysql client program, its default max_allowed_packet variable is 16MB. That is also the maximum value before MySQL 4.0. To set a larger value from 4.0 on, start mysql like this:
mysql> mysql –max_allowed_packet=32M
That sets the packet size to 32MB.
The server's default max_allowed_packet value is 1MB. You can increase this if the server needs to handle big queries (for example, if you are working with big BLOB columns). For example, to set the variable to 16MB, start the server like this:
mysql> mysqld –max_allowed_packet=16M
Before MySQL 4.0, use this syntax instead:
mysql> mysqld –set-variable=max_allowed_packet=16M
You can also use an option file to set max_allowed_packet. For example, to set the size for the server to 16MB, add the following lines in an option file:
[mysqld] max_allowed_packet=16M
Before MySQL 4.0, use this syntax instead:
[mysqld] set-variable = max_allowed_packet=16M
It's safe to increase the value of this variable because the extra memory is allocated only when needed. For example, mysqld allocates more memory only when you issue a long query or when mysqld must return a large result row. The small default value of the variable is a precaution to catch incorrect packets between the client and server and also to ensure that you don't run out of memory by using large packets accidentally.
You can also get strange problems with large packets if you are using large BLOB values but have not given mysqld access to enough memory to handle the query. If you suspect this is the case, try adding ulimit -d 256000 to the beginning of the mysqld_safe script and restarting mysqld.
A.2.10 Communication Errors and Aborted Connections
The server error log can be a useful source of information about connection problems. See Section 4.8.1, "The Error Log." Starting with MySQL 3.23.40, if you start the server with the –warnings option (or –log-warnings from MySQL 4.0.3 on), you might find messages like this in your error log:
010301 14:38:23 Aborted connection 854 to db: 'users' user: 'josh'
If Aborted connections messages appear in the error log, the cause can be any of the following:
The client program did not call mysql_close() before exiting.
The client had been sleeping more than wait_timeout or interactive_timeout seconds without issuing any requests to the server. See Section 4.2.3, "Server System Variables."
The client program ended abruptly in the middle of a data transfer.
When any of these things happen, the server increments the Aborted_clients status variable.
The server increments the Aborted_connects status variable when the following things happen:
A client doesn't have privileges to connect to a database.
A client uses an incorrect password.
A connection packet doesn't contain the right information.
It takes more than connect_timeout seconds to get a connect packet. See Section 4.2.3, "Server System Variables."
If these kinds of things happen, it might indicate that someone is trying to break into your server!
Other reasons for problems with aborted clients or aborted connections:
Use of Ethernet protocol with Linux, both half and full duplex. Many Linux Ethernet drivers have this bug. You should test for this bug by transferring a huge file via FTP between the client and server machines. If a transfer goes in burst-pause-burst-pause mode, you are experiencing a Linux duplex syndrome. The only solution is switching the duplex mode for both your network card and hub/switch to either full duplex or to half duplex and testing the results to determine the best setting.
Some problem with the thread library that causes interrupts on reads.
Badly configured TCP/IP.
Faulty Ethernets, hubs, switches, cables, and so forth. This can be diagnosed properly only by replacing hardware.
The max_allowed_packet variable value is too small or queries require more memory than you have allocated for mysqld. See Section A.2.9, "Packet too large."
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.
A.2.11 The table is full
There are several ways a full-table error can occur:
You are using a MySQL server older than 3.23 and an in-memory temporary table becomes larger than tmp_table_size bytes. To avoid this problem, you can use the -O tmp_table_size=# option to make mysqld increase the temporary table size or use the SQL option SQL_BIG_TABLES before you issue the problematic query.
You can also start mysqld with the –big-tables option. This is exactly the same as using SQL_BIG_TABLES for all queries.
As of MySQL 3.23, this problem should not occur. If an in-memory temporary table becomes larger than tmp_table_size, the server automatically converts it to a disk-based MyISAM table.
You are using InnoDB tables and run out of room in the InnoDB tablespace. In this case, the solution is to extend the InnoDB tablespace. See Section 9.8, "Adding and Removing InnoDB Data and Log Files."
You are using ISAM or MyISAM tables on an operating system that supports files only up to 2GB in size and you have hit this limit for the data file or index file.
You are using a MyISAM table and the space required for the table exceeds what is allowed by the internal pointer size. (If you don't specify the MAX_ROWS table option when you create a table, MySQL uses the myisam_data_pointer_size system variable. Its default value of 4 bytes is enough to allow only 4GB of data.) See Section 4.2.3, "Server System Variables."
- You can check the maximum data/index sizes by using this statement:
SHOW TABLE STATUS FROM database LIKE 'tbl_name';
You also can use myisamchk -dv /path/to/table-index-file.
- If the pointer size is too small, you can fix the problem by using ALTER TABLE:
ALTER TABLE tbl_name MAX_ROWS=1000000000 AVG_ROW_LENGTH=nnn;
You have to specify AVG_ROW_LENGTH only for tables with BLOB or TEXT columns; in this case, MySQL can't optimize the space required based only on the number of rows.
A.2.12 Can't create/write to file
If you get an error of the following type for some queries, it means that MySQL cannot create a temporary file for the result set in the temporary directory:
Can't create/write to file '\sqla3fe_0.ism'.
The preceding error is a typical message for Windows; the Unix message is similar. The fix is to start mysqld with the –tmpdir option or to add the option to the [mysqld] section of your option file. For example, to specify a directory of C:temp, use these lines:
[mysqld] tmpdir=C:/temp
The C:temp directory must already exist. See Section 3.3.2, "Using Option Files."
Check also the error code that you get with perror. One reason the server cannot write to a table is that the filesystem is full:
shell> perror 28 Error code 28: No space left on device
A.2.13 Commands out of sync
If you get Commands out of sync; you can't run this command now in your client code, you are calling client functions in the wrong order.
This can happen, for example, if you are using mysql_use_result() and try to execute a new query before you have called mysql_free_result(). It can also happen if you try to execute two queries that return data without calling mysql_use_result() or mysql_store_result() in between.
A.2.14 Ignoring user
If you get the following error, it means that when mysqld was started or when it reloaded the grant tables, it found an account in the user table that had an invalid password.
Found wrong password for user: 'some_user'@'some_host'; ignoring user
As a result, the account is simply ignored by the permission system.
The following list indicates possible causes of and fixes for this problem:
You may be running a new version of mysqld with an old user table. You can check this by executing mysqlshow mysql user to see whether the Password column is shorter than 16 characters. If so, you can correct this condition by running the scripts/add_long_password script.
The account has an old password (eight characters long) and you didn't start mysqld with the –old-protocol option. Update the account in the user table to have a new password or restart mysqld with the –old-protocol option.
- You have specified a password in the user table without using the PASSWORD() function. Use mysql to update the account in the user table with a new password, making sure to use the PASSWORD() function:
mysql> UPDATE user SET Password=PASSWORD('newpwd') -> WHERE User='some_user' AND Host='some_host';
A.2.15 Table 'tbl_name' doesn't exist
If you get either of the following errors, it usually means that no table exists in the current database with the given name:
Table 'tbl_name' doesn't exist Can't find file: 'tbl_name' (errno: 2)
In some cases, it may be that the table does exist but that you are referring to it incorrectly:
Because MySQL uses directories and files to store databases and tables, database and table names are case sensitive if they are located on a filesystem that has case-sensitive filenames.
Even for filesystems that are not case sensitive, such as on Windows, all references to a given table within a query must use the same lettercase.
You can check which tables are in the current database with SHOW TABLES.
A.2.16 Can't initialize character set
You might see an error like this if you have character set problems:
MySQL Connection Failed: Can't initialize character set charset_name
This error can have any of the following causes:
The character set is a multi-byte character set and you have no support for the character set in the client. In this case, you need to recompile the client by running configure with the –with-charset=charset_name or –with-extra-charsets=charset_name option. See Section 2.3.2, "Typical configure Options."
All standard MySQL binaries are compiled with –with-extra-character-sets=complex, which enables support for all multi-byte character sets. See Section 4.7.1, "The Character Set Used for Data and Sorting."
The character set is a simple character set that is not compiled into mysqld, and the character set definition files are not in the place where the client expects to find them.
In this case, you need to use one of the following methods to solve the problem:
Recompile the client with support for the character set. See Section 2.3.2, "Typical configure Options."
Specify to the client the directory where the character set definition files are located. For many clients, you can do this with the –character-sets-dir option.
Copy the character definition files to the path where the client expects them to be.
{mospagebreak title=File Not Found}
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.
A.2.17 File Not Found
If you get ERROR '…' not found (errno: 23), Can't open file: … (errno: 24), or any other error with errno 23 or errno 24 from MySQL, it means that you haven't allocated enough file descriptors for the MySQL server. You can use the perror utility to get a description of what the error number means:
shell> perror 23 File table overflow shell> perror 24 Too many open files shell> perror 11 Resource temporarily unavailable
The problem here is that mysqld is trying to keep open too many files simultaneously. You can either tell mysqld not to open so many files at once or increase the number of file descriptors available to mysqld.
To tell mysqld to keep open fewer files at a time, you can make the table cache smaller by reducing the value of the table_cache system variable (the default value is 64). Reducing the value of max_connections also will reduce the number of open files (the default value is 100).
To change the number of file descriptors available to mysqld, you can use the –open-files-limit option to mysqld_safe or (as of MySQL 3.23.30) set the open_files_limit system variable. See Section 4.2.3, "Server System Variables." The easiest way to set these values is to add an option to your option file. See Section 3.3.2, "Using Option Files." If you have an old version of mysqld that doesn't support setting the open files limit, you can edit the mysqld_safe script. There is a commented-out line ulimit -n 256 in the script. You can remove the '#' character to uncomment this line, and change the number 256 to set the number of file descriptors to be made available to mysqld.
–open-files-limit and ulimit can increase the number of file descriptors, but only up to the limit imposed by the operating system. There is also a "hard" limit that can be overridden only if you start mysqld_safe or mysqld as root (just remember that you also need to start the server with the –user option in this case so that it does not continue to run as root after it starts up). If you need to increase the operating system limit on the number of file descriptors available to each process, consult the documentation for your system.
Note: If you run the tcsh shell, ulimit will not work! tcsh will also report incorrect values when you ask for the current limits. In this case, you should start mysqld_safe using sh.
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.
{mospagebreak title=Installation-Related Issues}
A.3.1 Problems Linking to the MySQL Client Library
When you are linking an application program to use the MySQL client library, you might get undefined reference errors for symbols that start with mysql_, such as those shown here:
/tmp/ccFKsdPa.o: In function ´main': /tmp/ccFKsdPa.o(.text+0xb): undefined reference to ´mysql_init' /tmp/ccFKsdPa.o(.text+0x31): undefined reference to ´mysql_real_connect' /tmp/ccFKsdPa.o(.text+0x57): undefined reference to ´mysql_real_connect' /tmp/ccFKsdPa.o(.text+0x69): undefined reference to ´mysql_error' /tmp/ccFKsdPa.o(.text+0x9a): undefined reference to ´mysql_close'
You should be able to solve this problem by adding -Ldir_path -lmysqlclient at the end of your link command, where dir_path represents the pathname of the directory where the client library is located. To determine the correct directory, try this command:
shell> mysql_config –libs
The output from mysql_config might indicate other libraries that should be specified on the link command as well.
If you get undefined reference errors for the uncompress or compress function, add -lz to the end of your link command and try again.
If you get undefined reference errors for a function that should exist on your system, such as connect, check the manual page for the function in question to determine which libraries you should add to the link command.
You might get undefined reference errors such as the following for functions that don't exist on your system:
mf_format.o(.text+0x201): undefined reference to ´__lxstat'
This usually means that your MySQL client library was compiled on a system that is not 100% compatible with yours. In this case, you should download the latest MySQL source distribution and compile MySQL yourself. See Section 2.3, "MySQL Installation Using a Source Distribution."
You might get undefined reference errors at runtime when you try to execute a MySQL program. If these errors specify symbols that start with mysql_ or indicate that the mysqlclient library can't be found, it means that your system can't find the shared libmysqlclient.so library. The fix for this is to tell your system to search for shared libraries where the library is located. Use whichever of the following methods is appropriate for your system:
Add the path to the directory where libmysqlclient.so is located to the LD_LIBRARY_PATH environment variable.
Add the path to the directory where libmysqlclient.so is located to the LD_LIBRARY environment variable.
Copy libmysqlclient.so to some directory that is searched by your system, such as /lib, and update the shared library information by executing ldconfig.
Another way to solve this problem is by linking your program statically with the -static option, or by removing the dynamic MySQL libraries before linking your code. Before trying the second method, you should be sure that no other programs are using the dynamic libraries.
A.3.2 How to Run MySQL as a Normal User
On Windows, you can run the server as a Windows service using normal user accounts beginning with MySQL 4.0.17 and 4.1.2. (Older MySQL versions required you to have administrator rights. This was a bug introduced in MySQL 3.23.54.)
On Unix, the MySQL server mysqld can be started and run by any user. However, you should avoid running the server as the Unix root user for security reasons. In order to change mysqld to run as a normal unprivileged Unix user user_name, you must do the following:
Stop the server if it's running (use mysqladmin shutdown).
- Change the database directories and files so that user_name has privileges to read and write files in them (you might need to do this as the Unix root user):
shell> chown -R user_name /path/to/mysql/datadir
If you do not do this, the server will not be able to access databases or tables when it runs as user_name.
If directories or files within the MySQL data directory are symbolic links, you'll also need to follow those links and change the directories and files they point to. chown -R might not follow symbolic links for you.
Start the server as user user_name. If you are using MySQL 3.22 or later, another alternative is to start mysqld as the Unix root user and use the –user=user_name option. mysqld will start up, then switch to run as the Unix user user_name before accepting any connections.
- To start the server as the given user automatically at system startup time, specify the username by adding a user option to the [mysqld] group of the /etc/my.cnf option file or the my.cnf option file in the server's data directory. For example:
[mysqld] user=user_name
If your Unix machine itself isn't secured, you should assign passwords to the MySQL root accounts in the grant tables. Otherwise, any user with a login account on that machine can run the mysql client with a –user=root option and perform any operation. (It is a good idea to assign passwords to MySQL accounts in any case, but especially so when other login accounts exist on the server host.) See Section 2.4, "Post-Installation Setup and Testing."
A.3.3 Problems with File Permissions
If you have problems with file permissions, the UMASK environment variable might be set incorrectly when mysqld starts. For example, MySQL might issue the following error message when you create a table:
ERROR: Can't find file: 'path/with/filename.frm' (Errcode: 13)
The default UMASK value is 0660. You can change this behavior by starting mysqld_safe as follows:
shell> UMASK=384 # = 600 in octal shell> export UMASK shell> mysqld_safe &
By default, MySQL creates database and RAID directories with an access permission value of 0700. You can modify this behavior by setting the UMASK_DIR variable. If you set its value, new directories are created with the combined UMASK and UMASK_DIR values. For example, if you want to give group access to all new directories, you can do this:
shell> UMASK_DIR=504 # = 770 in octal shell> export UMASK_DIR shell> mysqld_safe &
In MySQL 3.23.25 and above, MySQL assumes that the value for UMASK and UMASK_DIR is in octal if it starts with a zero.
See Appendix B, "Environment Variables."
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.
{mospagebreak title=Administration-Related Issues}
A.4.1 How to Reset the Root Password
If you have never set a root password for MySQL, the server will not require a password at all for connecting as root. However, it is recommended to set a password for each account. See Section 4.3.1, "General Security Guidelines."
If you set a root password previously, but have forgotten what it was, you can set a new password. The following procedure is for Windows systems. The procedure for Unix systems is given later in this section.
The procedure under Windows:
Log on to your system as Administrator.
- Stop the MySQL server if it is running. For a server that is running as a Windows service, go to the Services manager:
Start Menu -> Control Panel -> Administrative Tools -> Services
Then find the MySQL service in the list, and stop it.
If your server is not running as a service, you may need to use the Task Manager to force it to stop.
- Open a console window to get to the DOS command prompt:
Start Menu -> Run -> cmd
We are assuming that you installed MySQL to C:mysql. If you installed MySQL to another location, adjust the following commands accordingly.
- At the DOS command prompt, execute this command:
C:> C:mysqlbinmysqld-nt –skip-grant-tables
This starts the server in a special mode that does not check the grant tables to control access.
- Keeping the first console window open, open a second console window and execute the following commands (type each on a single line):
C:> C:mysqlbinmysqladmin -u root flush-privileges password "newpwd" C:> C:mysqlbinmysqladmin -u root -p shutdown
Replace "newpwd" with the actual root password that you want to use. The second command will prompt you to enter the new password for access. Enter the password that you assigned in the first command.
Stop the MySQL server, then restart it in normal mode again. If you run the server as a service, start it from the Windows Services window. If you start the server manually, use whatever command you normally use.
You should now be able to connect using the new password.
In a Unix environment, the procedure for resetting the root password is as follows:
Log on to your system as either the Unix root user or as the same user that the mysqld server runs as.
Locate the .pid file that contains the server's process ID. The exact location and name of this file depend on your distribution, hostname, and configuration. Common locations are /var/lib/mysql/, /var/run/mysqld/, and /usr/local/mysql/data/. Generally, the filename has the extension of .pid and begins with either mysqld or your system's hostname.
- Now you can stop the MySQL server by sending a normal kill (not kill -9) to the mysqld process, using the pathname of the .pid file in the following command:
shell> kill ´cat /mysql-data-directory/host_name.pid´
Note the use of backticks rather than forward quotes with the cat command; these cause the output of cat to be substituted into the kill command.
- Restart the MySQL server with the special –skip-grant-tables option:
shell> mysqld_safe –skip-grant-tables &
- Set a new password for the root@localhost MySQL account:
shell> mysqladmin -u root flush-privileges password "newpwd"
Replace "newpwd" with the actual root password that you want to use.
Stop the MySQL server, then restart it in normal mode again.
You should now be able to connect using the new password.
Alternatively, on any platform, you can set the new password using the mysql client:
Stop mysqld and restart it with the –skip-grant-tables option as described earlier.
- Connect to the mysqld server with this command:
shell> mysql -u root
- Issue the following statements in the mysql client:
mysql> UPDATE mysql.user SET Password=PASSWORD('newpwd') -> WHERE User='root'; mysql> FLUSH PRIVILEGES;
Replace "newpwd" with the actual root password that you want to use.
Stop the MySQL server, then restart it in normal mode again.
You should now be able to connect using the new password.
{mospagebreak title=How to Deal with MySQL if it Crashes}
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.
A.4.2 What to Do If MySQL Keeps Crashing
Each MySQL version is tested on many platforms before it is released. This doesn't mean that there are no bugs in MySQL, but if there are bugs, they should be very few and can be hard to find. If you have a problem, it will always help if you try to find out exactly what crashes your system, because you will have a much better chance of getting the problem fixed quickly.
First, you should try to find out whether the problem is that the mysqld server dies or whether your problem has to do with your client. You can check how long your mysqld server has been up by executing mysqladmin version. If mysqld has died and restarted, you may find the reason by looking in the server's error log. See Section 4.8.1, "The Error Log."
On some systems, you can find in the error log a stack trace of where mysqld died that you can resolve with the resolve_stack_dump program. Note that the variable values written in the error log may not always be 100% correct.
Many server crashes are caused by corrupted data files or index files. MySQL will update the files on disk with the write() system call after every SQL statement and before the client is notified about the result. (This is not true if you are running with –delay-key-write, in which case data files are written but not index files.) This means that data file contents are safe even if mysqld crashes, because the operating system will ensure that the unflushed data is written to disk. You can force MySQL to flush everything to disk after every SQL statement by starting mysqld with the –flush option.
The preceding means that normally you should not get corrupted tables unless one of the following happens:
The MySQL server or the server host was killed in the middle of an update.
You have found a bug in mysqld that caused it to die in the middle of an update.
Some external program is manipulating data files or index files at the same time as mysqld without locking the table properly.
You are running many mysqld servers using the same data directory on a system that doesn't support good filesystem locks (normally handled by the lockd lock manager), or you are running multiple servers with the –skip-external-locking option.
You have a crashed data file or index file that contains very corrupt data that confused mysqld.
You have found a bug in the data storage code. This isn't likely, but it's at least possible. In this case, you can try to change the table type to another storage engine by using ALTER TABLE on a repaired copy of the table.
Because it is very difficult to know why something is crashing, first try to check whether things that work for others crash for you. Please try the following things:
Stop the mysqld server with mysqladmin shutdown, run myisamchk –silent –force */*.MYI from the data directory to check all MyISAM tables, and restart mysqld. This will ensure that you are running from a clean state. See Chapter 4, "Database Administration."
Start mysqld with the –log option and try to determine from the information written to the log whether some specific query kills the server. About 95% of all bugs are related to a particular query. Normally, this will be one of the last queries in the log file just before the server restarts. See Section 4.8.2, "The General Query Log." If you can repeatedly kill MySQL with a specific query, even when you have checked all tables just before issuing it, then you have been able to locate the bug and should submit a bug report for it. See Section 188.8.131.52, "How to Report Bugs or Problems."
Try to make a test case that we can use to repeat the problem.
Try running the tests in the mysql-test directory and the MySQL benchmarks. They should test MySQL rather well. You can also add code to the benchmarks that simulates your application. The benchmarks can be found in the sql-bench directory in a source distribution or, for a binary distribution, in the sql-bench directory under your MySQL installation directory.
Try the fork_big.pl script. (It is located in the tests directory of source distributions.)
If you configure MySQL for debugging, it will be much easier to gather information about possible errors if something goes wrong. Configuring MySQL for debugging causes a safe memory allocator to be included that can find some errors. It also provides a lot of output about what is happening. Reconfigure MySQL with the –with-debug or –with-debug=full option to configure and then recompile.
Make sure that you have applied the latest patches for your operating system.
Use the –skip-external-locking option to mysqld. On some systems, the lockd lock manager does not work properly; the –skip-external-locking option tells mysqld not to use external locking. (This means that you cannot run two mysqld servers on the same data directory and that you must be careful if you use myisamchk. Nevertheless, it may be instructive to try the option as a test.)
Have you tried mysqladmin -u root processlist when mysqld appears to be running but not responding? Sometimes mysqld is not comatose even though you might think so. The problem may be that all connections are in use, or there may be some internal lock problem. mysqladmin -u root processlist usually will be able to make a connection even in these cases, and can provide useful information about the current number of connections and their status.
Run the command mysqladmin -i 5 status or mysqladmin -i 5 -r status in a separate window to produce statistics while you run your other queries.
Try the following:
Start mysqld from gdb (or another debugger).
Run your test scripts.
Print the backtrace and the local variables at the three lowest levels. In gdb, you can do this with the following commands when mysqld has crashed inside gdb:
backtrace info local up info local up info local
With gdb, you can also examine which threads exist with info threads and switch to a specific thread with thread #, where # is the thread ID.
Try to simulate your application with a Perl script to force MySQL to crash or misbehave.
Send a normal bug report. See Section 18.104.22.168, "How to Report Bugs or Problems." Be even more detailed than usual. Because MySQL works for many people, it may be that the crash results from something that exists only on your computer (for example, an error that is related to your particular system libraries).
If you have a problem with tables containing dynamic-length rows and you are using only VARCHAR columns (not BLOB or TEXT columns), you can try to change all VARCHAR to CHAR with ALTER TABLE. This will force MySQL to use fixed-size rows. Fixed-size rows take a little extra space, but are much more tolerant to corruption.
The current dynamic row code has been in use at MySQL AB for several years with very few problems, but dynamic-length rows are by nature more prone to errors, so it may be a good idea to try this strategy to see whether it helps.
{mospagebreak title=How MySQL Handles a Full Disk, Temp Files, Socket Files and Time Zones}
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.
A.4.3 How MySQL Handles a Full Disk
When a disk-full condition occurs, MySQL does the following:
It checks once every minute to see whether there is enough space to write the current row. If there is enough space, it continues as if nothing had happened.
Every six minutes it writes an entry to the log file, warning about the disk-full condition.
To alleviate the problem, you can take the following actions:
To continue, you only have to free enough disk space to insert all records.
To abort the thread, you must use mysqladmin kill. The thread will be aborted the next time it checks the disk (in one minute).
Other threads might be waiting for the table that caused the disk-full condition. If you have several "locked" threads, killing the one thread that is waiting on the disk-full condition will allow the other threads to continue.
Exceptions to the preceding behavior are when you use REPAIR TABLE or OPTIMIZE TABLE or when the indexes are created in a batch after LOAD DATA INFILE or after an ALTER TABLE statement. All of these statements may create large temporary files that, if left to themselves, would cause big problems for the rest of the system. If the disk becomes full while MySQL is doing any of these operations, it will remove the big temporary files and mark the table as crashed. The exception is that for ALTER TABLE, the old table will be left unchanged.
A.4.4 Where MySQL Stores Temporary Files
MySQL uses the value of the TMPDIR environment variable as the pathname of the directory in which to store temporary files. If you don't have TMPDIR set, MySQL uses the system default, which is normally /tmp, /var/tmp, or /usr/tmp. If the filesystem containing your temporary file directory is too small, you can use the –tmpdir option to mysqld to specify a directory in a filesystem where you have enough space.
Starting from MySQL 4.1, the –tmpdir option can be set to a list of several paths that are used in round-robin fashion. Paths should be separated by colon characters (':') on Unix and semicolon characters (';') on Windows, NetWare, and OS/2. Note: To spread the load effectively, these paths should be located on different physical disks, not different partitions of the same disk.
If the MySQL server is acting as a replication slave, you should not set –tmpdir to point to a directory on a memory-based filesystem or to a directory that is cleared when the server host restarts. A replication slave needs some of its temporary files to survive a machine restart so that it can replicate temporary tables or LOAD DATA INFILE operations. If files in the temporary file directory are lost when the server restarts, replication will fail.
MySQL creates all temporary files as hidden files. This ensures that the temporary files will be removed if mysqld is terminated. The disadvantage of using hidden files is that you will not see a big temporary file that fills up the filesystem in which the temporary file directory is located.
When sorting (ORDER BY or GROUP BY), MySQL normally uses one or two temporary files. The maximum disk space required is determined by the following expression:
(length of what is sorted + sizeof(row pointer)) * number of matched rows * 2
The row pointer size is usually four bytes, but may grow in the future for really big tables.
For some SELECT queries, MySQL also creates temporary SQL tables. These are not hidden and have names of the form SQL_*.
ALTER TABLE creates a temporary table in the same directory as the original table.
A.4.5 How to Protect or Change the MySQL Socket File /tmp/mysql.sock
The default location for the Unix socket file that the server uses for communication with local clients is /tmp/mysql.sock. This might cause problems, because on some versions of Unix, anyone can delete files in the /tmp directory.
On most versions of Unix, you can protect your /tmp directory so that files can be deleted only by their owners or the superuser (root). To do this, set the sticky bit on the /tmp directory by logging in as root and using the following command:
shell> chmod +t /tmp
You can check whether the sticky bit is set by executing ls -ld /tmp. If the last permission character is t, the bit is set.
Another approach is to change the place where the server creates the Unix socket file. If you do this, you should also let client programs know the new location of the file. You can specify the file location in several ways:
- Specify the path in a global or local option file. For example, put the following lines in /etc/my.cnf:
[mysqld] socket=/path/to/socket [client] socket=/path/to/socket
See Section 3.3.2, "Using Option Files."
Specify a –socket option on the command line to mysqld_safe and when you run client programs.
Set the MYSQL_UNIX_PORT environment variable to the path of the Unix socket file.
Recompile MySQL from source to use a different default Unix socket file location. Define the path to the file with the –with-unix-socket-path option when you run configure. See Section 2.3.2, "Typical configure Options."
You can test whether the new socket location works by attempting to connect to the server with this command:
shell> mysqladmin –socket=/path/to/socket version
A.4.6 Time Zone Problems
If you have a problem with SELECT NOW() returning values in GMT and not your local time, you have to tell the server your current time zone. The same applies if UNIX_TIMESTAMP() returns the wrong value. This should be done for the environment in which the server runs; for example, in mysqld_safe or mysql.server. See Appendix B, "Environment Variables."
You can set the time zone for the server with the –timezone=timezone_name option to mysqld_safe. You can also set it by setting the TZ environment variable before you start mysqld.
The allowable values for –timezone or TZ are system-dependent. Consult your operating system documentation to see what values are acceptable.
This chapter is from MySQL Administrator's Guide, by MySQL AB. (Sams, 2004, ISBN: 0672326345). Check it out at your favorite bookstore today. Buy this book now.


text:
Candidate presented by: Janine Geske, Distinguished Professor of Law
Only 56 percent of India's population can read and write but if Rev. Trevor Miranda, S.J., has his way, the country will be 100 percent literate. It was only three years ago that the Indian government formally recognized education as a fundamental right, but Fr. Miranda has always known that schooling is the shortest route to empowerment. As a result, he founded and runs a system of 450 non-formal schools named the Reach Education Action Program (REAP). Located along India's most populous and poverty-stricken transportation corridors, REAP enrolls children who have dropped out of school, teaches them to read, and ultimately returns them to the mainstream municipal school system. Since its inception in 1998, REAP has helped thousands of children get back to school or into equally useful vocational training programs.
India is so poverty-stricken that young boys and girls are routinely taken out of school and forced into jobs, many of them exploitative. Fr. Miranda believes there is no excuse for a young person to be working. Children, he says, need to be students, not rag pickers. So he and his colleagues go door-to-door, surveying households to find out-of-school children, and they try to convince parents to send their boys and girls back to school. It is rarely an easy sell. Once parents get a taste of their child's paycheck, however meager it may be, they see no point in education.
It takes a special learning environment to win over these parents, which is why REAP endeavors "to give the best to the least," as its credo states. The students who enroll in REAP discover an oasis of opportunity that stands in stark contrast to the bleak factories and garbage dumps in which they otherwise would forced to toil. REAP transforms the most dilapidated huts into vibrant classrooms where students, dressed in clean uniforms, not only learn how to read and write but have fun doing it. The teachers, many whom are former dropouts themselves, are dedicated and energetic, and turnover is virtually unheard of.
REAP is always innovating and, over time, has grown to include training programs for women to learn valuable professional and life skills and to develop the conviction to be agents of social change in their families and communities.
REAP never hesitates to go where the need is greatest. Fr. Miranda was once even asked to establish a learning center in what essentially was a garbage dump. At first, he and his staff wondered how they could get children to learn under such atrocious conditions. And yet, they knew they couldn't say no and found a way to make it work. After all, REAP's philosophy is that when it comes to serving the poor, no risk is too great.
When asked what role faith plays in his daily life, Fr. Miranda chuckles a bit as if the question may as well have been how important water is for a fish. For Fr. Miranda and his colleagues, every day is a leap of faith, but it's a leap they never stop taking.
Because of his commitment to education for all children and his inspirational
work for human rights, Reverend President, I hereby recommend Rev. Trevor Miranda,
of the Society of Jesus, for the Marquette University degree of Doctor of Letters, honoris causa.

subset: commoncrawl


text:
This is a lie - I've come out the wrong entrance and I'm desperately trying to find Eversholt Street to meet Tim Anderson, winner of this year's MasterChef at Asakusa.
Finally I arrive, only to see Tim standing in front of the restaurant chatting on his mobile. Except it's not his mobile phone, but one belonging to a gentleman who is perched on his bike and looking at him half excitedly, half in abashment.
It dawns on me that said gentleman has asked Tim to talk to his significant other/mother Tom Cruise-style, and I try very, very hard not to wet myself laughing.
I smile at Tim and he smiles back, finishes speaking and hands the phone to the guy on the bike, who apologises for the intrusion. I contemplate offering to take a photo of him with Tim, and then decide it would just get too weird ...
Anyway. Such is the power of MasterChef these days that its winner can apparently be elevated to Hollywood superstar status.
To business then ...
26 year old American Tim Anderson has come a long way, literally. Brought up in Racine, Wisconsin, he moved to LA as a student and then to Japan for further studies and to teach English. It wasn't till he was immersed in Japanese food and culture that he realised he wanted to cook and actually had a talent for it. Meanwhile, he fell in love with Laura, a Brit born to Japanese and Italian parents, and a fellow teacher. As is often the way, he followed his love back to her home where they ended up getting married. So far, so good.
And then he went and won MasterChef. Up till recently, he was working as the bar manager at the Euston Tap pub, London. As I catch up with him, I'm assuming this is no longer the case.
On the upcoming BBC Good Food Shows:
I will be there the whole time, Tom and Sara [his fellow finalists] a few days. They want us to do things that people can cook at home, so for me that means no dry ice, no monkfish liver, no ingredients you can't get outside of London easily, like yuzukosho and katsuobushi. Japan Centre's mail order is very good, they deliver all over the country, but most people wouldn't know where to start. It's got to be simple, but I'm trying to incorporate good skills like filleting a fish.
I'll also be doing the MasterChef Winner cook-offs, with Mat [Follas, 2009 winner] and Dhruv [Baker, 2010 winner]. If I have to lose to Dhruv, there's no shame in that.
On fame:
I've had a few people come up to me in the bar just to meet me and that's nice. We had a really nice Japanese couple come in and I felt really vindicated to have them back me up. I don't think I could cope with a mob though.
Tom says he has a big gay following. Everyone says he looks like Tom Hardy. Everyone says I look like Dana Carvey, specifically Garth [erm, sorry about that]. I just don't see it, but it's given us a great idea for a Halloween costume though - Laura wants to be Wayne.
[a fellow diner comes up to tell Tim that he thought he was fantastic on the show, so I ask if he's signed any autographs yet]
I've signed all kinds of things that aren't really related. Some guy had just come from a football match and he gave me his programme to sign. I've signed a Delicious magazine that I wasn't in. It's funny how my Twitter following has exploded, it's nuts [he has over 10,000 followers].
[I say to him, like some kind of crap Yoda, "Don't let fame change you". He replies, "Too late for that, ha". He's kidding. I think].
On immediate plans:
I'm going to go up to Scotland to do some lobster-catching, deer hunting and brewing with Brewdog and Black Isle Brewery (and maybe Harviestoun), and also a special beer-matching dinner at Brewdog's Musa in Aberdeen.
I'm talking to someone about doing a Fourth of July dinner in London, focusing on ingredients and flavours from America that you wouldn't normally think of. We're talking about getting some great American cheese over, from Wisconsin, California, Pennsylvania, Vermont, a mind-blowing cheeseboard.
On opening a restaurant:
I'm gonna be doing some very exciting stages over the summer that I can't talk about. There are skills I'd like to perfect like the French classics – sauces, souffles, pastry. Even though I want to open a Japanese style restaurant, I want experience in French/British restaurants to fill in the gaps. I think London is the only place for me to be - for me, there's not quite the same energy in other cities that you have here, even though there are great restaurants.
I'm gonna have wafu spaghetti on my menu. If you go to an izakaya in Japan, the menus are wacky, just all over the place, and that's what's fun about them. You get traditional Japanese food, and you get pizza and fondue and pasta. They don't care. If it's good and it soaks up the alcohol, it's fair game basically.
On beer:
I am a beer geek and I think it's a damn shame that, especially in this country, wine has dominated the food scene. A lot of beer in restaurants isn't up to scratch with the food because they don't care about it, but especially with British food and Asian food, beer is generally more compatible.
On Burma [Tim visited in 2008]:
I liked Mandalay Beer. You know I had some crazy shit when I was in Burma. We had a palm sugar drink – they call it sky beer [Burmese name is htan-yay – aka palm wine or toddy] – it went very well with the food. I had the best fried chicken of my life there, slathered in raw garlic and chillies and green onions. For some reason our tour guide brought us to this guy who was making rice whisky, moonshine. I bought half a litre; it cost me the equivalent of 50p. It was horrible. It tasted like something that would make you go blind. Not to say that there's no good rice whisky in Burma, but not that guy's.
On living in Japan:
If you want to travel anywhere on your own, you need to be able to communicate [Tim is able to order for us off the wall menus written in kanji - this is dead impressive].
Otherwise you just go to the same places everyone does, which is fine, there's fun to be had, but there's so much interesting stuff off the beaten path. I'm dying to return, but I don't have the money.
On his menu in the MasterChef final:
It took me a while to get my dashi just right, but in the end it was down to the water. I use bottled water for my dashi now, because London water is just too damn hard. It really affects the flavour badly.
People should make their own dashi - powdered dashi just isn't the same, but those packets are good for sprinkling on rice like furikake.
On cooking generally:
I've just quit at the Euston Tap. I'm taking a week off for recipe testing. I haven't had a chance to really cook lately. When I do, it's not necessarily something creative – I just like to be cooking. I make beans on toast and pasta and stir-fries. Laura is a good cook too.
On writing a cookbook:
I'm not sure what form yet – too many ideas. I'd really like to do a book about regional foods in Japan, part cookbook, part travel guide, part cultural study and part photo book. But that's a tough sell maybe [I'd love a book like that].
And those other questions:
What was the final push that made you enter MasterChef?
I did it very idly. I thought, "I should do this" and the wife said, "You should do this". I liked cooking and I'd been pretty good at it. I knew I wasn't satisfied, but I didn't think anything would come of it. So when I got the phonecall a month after I applied, I was surprised … it's really been a year of my life from when I applied to when it finally aired.
Has there ever been a kitchen mishap that's driven you to tears?
When I was practising for the MasterChef final, I did the starter one day, the main the next, the pudding the third and on the fourth day I was planning to do every single dish all at once in my kitchen in three hours.
I had everything set up, all my mise en place, my pots and pans ready to go, I had my playlist ready. I was in my pyjamas as I'd just got up and I was going straight into cooking. I realised I didn't have any butter, so I popped some change in my pocket, and hopped out the door. As soon as the door shut I realised I didn't have my keys. Dead of winter, no keys, no phone, three pounds, wife's out of town for the weekend, so I had to be very strategic.
I used my first pound to go to an internet café to look up the number for my estate agent. I used the second pound to make a phone call to him, and I used the third pound to get a bus to go to him to get the key.
I finally get home and the key the estate agent has given me doesn't work. So I go to the dental surgery below my flat to use their phone and they let me call the estate agent. So half an hour later he shows up with a key that does work.
So I'd spent about two hours overall in the freezing cold in my pyjamas. There was snow on the ground and the whole ordeal made me not want to cook, but I knew I had to, so when I got in, I went crazy and I did it. Made everything from scratch in three hours. But I almost cried that day.
You're hosting your dream dinner party and you can invite 1 living person, 1 dead, and 1 fictional (no friends or family) - who would they be?
It'll have to be people who really enjoy their food and drink, who are fairly extrovert and good conversationalists, and who'd want to have dinner and then go out for karaoke. So I would say Simon Amstell – he's funny and he'd be good for a night out, Oscar Wilde, because I'd like to see the spark between him and Simon Amstell and I think he'd be good for banter, and Homer Simpson.
Which came first, the chicken or the egg?
That really depends on which chicken and which egg, doesn't it? I would say the egg as a concept came before the chicken.
Describe yourself in three words
Nostalgic American neophile. I'm pretty nostalgic and sentimental when it comes down to it. I miss things like burgers in Wisconsin, and tacos in LA, and ramen in Japan. I'm a neophile because I'm always looking for something new and I get bored quite easily. And I'm culturally very American – that's what they tell me anyway!
What's the worst thing you have ever cooked?
I made some kale once that was so salty that my wife couldn't even eat it. Too much soy sauce. I also served chicken at a barbecue when I was very young that was basically raw inside. I always like to think of my failures as learning experiences!
What's your guilty food pleasure?
If it's really a true pleasure, you shouldn't feel guilty … there are things that I eat because I'm hungry and there's nothing open at night. So I'll have a Pot Noodle, and I'm not proud of that, and I don't even think they taste very good, but it's to fill a hole.
Who would win in a fight between a baboon and a badger?
[Without hesitation] A baboon – they're smarter. No contest. Bigger and smarter – a baboon would just grab the badger and throw it off a cliff.
Do you think cooking *does* get tougher than MasterChef?
I think the biggest challenge for me will be running a restaurant. Difficult endeavour all round and a lot of hard work. I've had experience managing the bar and though it's less complicated, it's good practice eg ordering, staffing.
What would be your last meal on Earth?
Two that come to mind. Something like a Ploughman's – a few good pieces of cheese and a good pint of ale and some fruit and some nuts. That'd be it – I don't need chutney or bread. Or tonkatsu ramen – Japanese Kyushu-style pork broth and extra noodles. And a big bottle of beer, a big Kirin. There's so much flavour and they make me feel so at home, those dishes.
If you were a superhero, what would you be called and what special powers would you have?
Can I be a genie instead? What I really want to do is have a wallet that fills up all the time. It's not really a super-power though – it's just greed. That'd be my name - Magical Wallet.
Who do you most admire?
Friends and family who've made a good life for themselves by working hard and being kind. It's the American dream [laughs].
Actually, one of my best friends had a website reviewing video games about six years ago and now he runs and co-owns a web app company worth about £800k. He works hard and is smart and nice, and I think that's really cool and admire that.
What keeps you awake at night?
Snoring? No, I sleep pretty soundly!
What's your favourite cuisine when eating out and what cuisine would you like to try that you haven't before?
I do like eating Japanese, but my favourite restaurants in London are curry houses, especially Mirch Masala. They're a little chain, about six of them, the one on Commercial Road is ten minutes from my flat.
There's so many I haven't tried. Next on the list is Eastern European food – Russian, Czech, Polish.
What's the stupidest/naughtiest thing you did as a child?
I ate a block of butter once, but I was a good kid. I didn't start getting in trouble till I was an adult.
Do you have a nickname (childhood or current)?
In Japan, they called me Timo. A couple of my friends call me Tim Tam after the Australian biscuit. I don't let people call me Timbo though!
What's your favourite TV programme (other than MasterChef) and favourite band?
QI, old Simpsons, Japanese Iron Chef, Futurama [I mention I got obsessed with Bistro SMAP when I was in Japan and Tim suggests that Take That should start their own version. I am All. For. This.].
My favourite music is ska, and my favourite band is Tokyo Ska Paradise Orchestra. They're the best ska band in the world, maybe all of history.
What's been your proudest moment so far, not including winning MasterChef?
Don't know about proudest, but my happiest was getting married to my wife Laura.
Who would you least like to be trapped in a lift with?
I dunno if I should answer that! Um, Tom and Sara from MasterChef – I hate those guys [he's joking].
Where would you like to live?
Probably Hawaii. I love Hawaii; I love the Pacific in general. Though it's a bit isolated – I might say Los Angeles.
Tell us three more interesting things about yourself: two true, one a lie
- I'm Jewish.
- I have a scar from when a friend burnt me with a cigarette on my arm.
- I once swallowed a quarter on a dare.
Crab or lobster bisque comes to mind. Miso works well in creamy soups, like a creamy potato soup or a chowder. I quite like it in a steak au poivre, which is really where I got my idea for the mocha steak.
Would you rather wear huge clown shoes for a month or introduce yourself as Timbo the Superstar at 5 meetings?
The second one – at least I could laugh it off!
When am I going to get to eat your food?
That Fourth of July dinner for a start, but there will be pop-ups and parties and a catering business to come ...
Tim Anderson
MasterChef Winner 2011
Read my recap of this year's MasterChef Final here
First and Last Photos: Paul Winch-Furness / www.paulwf.co.uk
Special thanks to @foodurchin, @suzler, @lukemackaycooks, @electroweb, @rankamateur, @disklabs and Popb*tch for additional questions.
Ooh look - the Observer Food Monthly Awards are looking for nominations for Best Food Blog ... :)


text:
Working at Toolstation
People @ Toolstation
Find out about working at Toolstation. Meet colleagues from each of our key business areas and hear about what makes Toolstation so special to them.View Toolstation People
Business areas
What do we do? Meet colleagues from of our key business areas...
Why work for Toolstation?
From your first day with us you'll be warmly welcomed into the Toolstation team.
Supporting the communities in which we live and work is also important to us. Read more about our support for the RNLI Flood Rescue Team and the Toolstation Football leagues.
Finally find out more about how we develop our people, our rewards and recognition and our commitment to growing talent from within.
Jobs Near You
Vacancy Search
Search for current opportunities and apply online, or register for e-mail alerts for future positions.View Job Vacancies


text:
I just arrived in Denton and wanting to play some tennis. I'm somewhere between 4 and 4.5; willing to play almost any evening (or even morning depending on day) any place in main Denton area
Number is 434-409-2864
Views: 130
Replies to This Discussion
Hello! Is this the same Andy that joined the men's league on Thursday nights? You should definitely join us on Saturday mornings. It's a fun group.
© 2019 Created by Mark / The Mayor. Powered by


text:
Baseball Batters Southeastern La., 13-1
BATON ROUGE, La. -- Second-ranked LSU (6-1) bounced back from its first loss of the season and defeated Southeastern Louisiana (5-2) by a score of 13-1 Sunday at Alex Box Stadium.
The Tigers will travel to Lafayette, La. for their first road game of the season against the Ragin' Cajuns of Louisiana-Lafayette (7-1). First pitch is scheduled for 6 p.m. on LSU Radio Network Affiliates (98.1 FM in the Baton Rouge area).
"A team is often measured by how it responds to adversity," said LSU coach Paul Mainieri, " and I felt our team bounced back in a big way after the loss (9-4 to BYU) on Saturday. We feel like we have a good offensive club, and the performance we had in the loss was not indicative at all of what kind of lineup we have. I think today demonstrated the firepower that we're capable of producing."
The Tigers resumed Friday's suspended game versus SLU with a bang on Sunday as first baseman Mason Katz sent a three-run home run into the left field seats. It was Katz' second home run of the season and three of his career-high six RBI in the game.
LSU extended its first-inning lead with an RBI-single from designated hitter Alex Edward.
The Tigers added more runs in the second inning with an RBI double from outfielder Raph Rhymes, who would finish 4-for-5 with five runs batted in. Katz also delivered with an RBI single in the second.
Katz collected his fifth and sixth RBI in the sixth inning with a two-out double, scoring Rhymes and Mark Laird, who scored four runs and finished 3-for-4 on the day.
LSU added three insurance runs in the seventh off the bats of reserve infielder Casey Yocom and Rhymes.
LSU junior right-hander Ryan Eades (1-0) was credited with the win, allowing one run while striking out five in six innings of solid work.
Southeastern Louisiana left-hander Jordan Hymel (0-1) suffered the loss after giving up five runs in 1.1 innings.
LSU 13, Southeastern La. 1 (Feb 22, 2013 at Baton Rouge, La.)
Southeastern La..... 000 001 000 - 1 8 1 (5-2)
Pitchers: Southeastern La. - Hymel, Jordan; Klotz, Mason (2); Greenleaf, Jason (4);
Cedotal, Kyle (5); Gremillion, John (6); Catalano, Brennan (7); Manuel, Kaleb (8) and Roberson, Sam
LSU - Ryan Eades; Kevin Berry (7); Hunter Devall (8); Taylor Butler (9); Chris Cotton (9) and Ty Ross; Chris Chinea.
Win-Ryan Eades (1-0) Loss-Hymel, Jordan (0-1) T-2:55 A-11161
HR LSU - Mason Katz (2).
Game was suspended in the bottom of the 1st at 7:20 pm on Friday 2/22.
Game resumed at 1:01 pm on Sunday 2/24.
Actual Attendance: 6,953
Gremillion J faced 1 batter in the 7th.


text:
Eredivisie wrap: Ajax go top, Roda hold AZ
Danny Hoesen's opener proved to the difference at the interval, before Viktor Fischer provided Frank de Boer's side with breathing space and Davy Klaassen completed the scoring 11 minutes from time.
It may only be a temporary residence in a familiar spot for Ajax, with their advantage standing at one point over Vitesse before the latter's clash with Go Ahead Eagles on Sunday.
Ajax benefitted from Vitesse's fellow high-flyers AZ slipping up in a bad-tempered 2-2 draw at home to Roda JC.
AZ found remarkably found themselves down to nine men inside the first 20 minutes with Nick Viergever and Nemanja Gudelj receiving their marching orders.
Incredibly, Dick Advocaat's side claimed a 25th-minute lead through Mattias Johansson, but Wiljan Pluim soon restored parity.
AZ were unperturbed and scored again to lead at the break through Aron Johannsson's effort, however Vasil Shkurti provided the penultimate twist with an injury time equaliser - Roda going on to finish a man down after Bart Biemans collected a second yellow card.
Injury-time goals and red cards were seemingly the order of the day with both also occurring in the 1-1 draw between PSV and Heerenveen at the Philips Stadion.
Joey van den Berg left his visiting team-mates to play 75 minutes without him but they looked to have snatched a winner with 10 to go as Yanic Wildschut.
But the hosts' numerical advantage told as Florian Jozefzoon grabbed a goal in the first minute of stoppage time to placate the locals somewhat.
NEC remain at the bottom of the pile after goals from Mohamed El Makrini and Tobias Haitz secured a 2-1 win for Camburr, who leapt out of the relegation zone with three points.


text:
Blocking of 3rd Party Charges
As a Cox customer, you have the ability to block 3rd party charges on your bill, such as collect and operator assisted calls. Please call your local customer service department if you would like to block 3rd party charge
Service agreements and details
Cox intrastate phone service is provided to you, depending on the state where you receive service, pursuant to our tariffs on file with state public utilities commissions or a state Telephone Service Guide. Cox Business services (except for VoiceManager) and certain Residential service offers are subject specific terms and conditions in addition to the applicable state tariff or Service Guide. Interstate and international services are offered under the following terms and conditions.
Customer Service Agreement - Interstate and International Terms and Conditions
Business General Terms - additional terms and conditions including, without limitation, the additional interconnected Voice over Internet Protocol (VoIP) terms and conditions
Business Services plans and pricing details
Additional tariff and regulatory links:
Residential Services (including state tariffs and service guides)
Domestic operator services are provided for use by pre-subscribed business customers or authorized users. Operator services may also be provided to end users from pay telephones, hotels, motels or other aggregator locations. Operator services allow the business customer to place a call and arrange for billing to the customer's pre-subscribed access line or to a billing arrangement, including a credit card, collect to the called party or to a third party. Calls are billed in whole-minute increments.
The following billing arrangements are available to business customers through Cox domestic operator services:
Operator station (Operator assisted 0+-): Customer places a call by dialing 0 + area code + station number, and waits for the assistance of an operator to place the call. Calls may be billed to a calling card, to the called number (collect) or to a valid third party.
Person to person: The customer places a call by dialing 0 + area code + station number, and waits for the assistance of a live operator, and specifies a particular person, station, room number, department or office to be reached through a PBX attendant. Charges do not apply unless the caller reaches the requested party. Calls may be billed to a calling card, the called party (Collect) or to a third party.
Operator dialed (0-): The customer places a call by dialing 00- from their pre-subscribed access line, or they are transferred to a company operator from the local exchange carrier (LEC) after dialing 0-, and asks the operator to dial the destination number. Calls may be billed to a calling card, to the called number (collect) or to a valid third-party telephone number
Additional billing arrangements available to business customers through Cox domestic operator services may be available in your location. Please see Business General Terms for billing arrangements and rates by state.
Directory assistance: Both Local (411) and Domestic Long Distance Directory Assistance (i.e., via NPA-555-1212) are available to Customers of Cox. The Directory Assistance charge applies to each call to the Directory Assistance Operator. Up to two requests may be made on each call to Directory Assistance. The Directory Assistance charge applies to each call regardless of whether the Directory Assistance Operator is able to furnish the requested telephone number. Directory Assistance rates vary by state. Please see Business General Terms for rates by state.
Network Interface Fee: The Network Interface Fee ("NIF") is an interstate fee that Cox assesses its iVoIP customers that helps defer some of the cost associated with carrier network interconnection services and the interface with the Public Switched Telephone Network ("PSTN"). The fee is a monthly, flat-rated charge assessed to iVoIP customers for each line, voice path or trunk that is active on the account. Cox may change the NIF rate from time to time by providing notice to the Customer. NIF rates vary by state. Please see Business General Terms for rates by state.
FCC access charge: The FCC access charge or End User Common Line Charge (EUCL) is a monthly, flat-rated charge assessed to end users for each local exchange service line or trunk. The End User Common Line charge will be based on a monthly snapshot of end user accounts. Fractional debits or credits will be assessed for partial months due to service installs and disconnects.
When a customer is provided more than one local business exchange service in a state by the same company, the FCC Access charge or EUCL Multi Line Business Subscriber rates are assessed for each line.
Access Recovery Fee: Business Customers assessed an End User Common Line Charge will be assessed a flat-rated, monthly Access Recovery Fee (ARF). ARFs will be billed to the associated end user or reseller of the local exchange services, with the exception of those customers who participate in the Lifeline Assistance Program.
EUCL and ARF rates vary by state. Please see Cox's FCC Access Tariff #4 for rates by state.
Universal Service Fund: Pursuant to the Telecommunications Act of 1996, as implemented by the FCC, effective January 1, 1998, Cox is required to pay into a federally mandated "Universal Service Fund" by means of "contribution factors" to be assessed on interstate and international revenues. The Universal Service Fund provides federally subsidized affordable access to modern telecommunications and information services for schools, libraries and rural health care facilities that meet specific eligibility standards, as well as provide support to specific federal "Lifeline" and "High-Cost Fund" programs used to subsidize local telephone service.
In accordance with FCC guidelines set forth in Order No. 157, Cox has elected to pass-through these Universal Service Fund costs to all retail customers. The FCC calculates the contribution factor each quarter, and each quarter, Cox will adjust its surcharge to match the FCC's rate.
Cox Business is interconnected with the emergency 911 network. There are important customer responsibilities for 911 operations. Below, please read our 911 Practice Statement carefully to understand and follow these obligations.
Cox Business Trunking Service - e911 Practice Statement
Please read this statement carefully for important Customer obligations. Cox Business trunking services (including PRI and SIP trunking services) are interconnected with the emergency 911 network so that 911 calls are routed to Public Safety Answering Points ("PSAPs").
PSAPs access location information on 911 calls through the Automatic Location Information Database ("ALI Database") based on the telephone number of the incoming call. This allows responders to determine the Customer's address if the caller is unable to provide it to the PSAP when a 911 call is placed from Customer's location.
Customer Responsibility for Testing: It is Customer's responsibility to conduct initial and regular testing of the ability to dial 9-1-1 over Cox Business services and ensure that: 1) Customer Premises Equipment ("CPE") is compatible with Cox Business services; 2) the PSAP is able to indentify the Customer's address when a 911 call is placed from Customer's location; and, if Customer is using a PS/ALI service to provide enhanced PS/ALI functions (as described below), that 3) the PSAP is able to indentify the specific location within Customer's address from where the 911 call is placed. (See Section 5, Testing 9-1-1 Call Processing for PBX Systems; NENA Technical Information Document No. 03-502, "Trunking for Private Switch 9-1-1 Service," available at www.nena.org.)
Customer Responsibility for Enhanced PS/ALI: Cox Business supports the use of enhanced Private Switch / Automatic Location Information ("PS/ALI") functions where the CPE and Cox Business facilities permit such enhanced PS/ALI functions. Such functions permit CPE to register specific PBX stations in the ALI Database to direct emergency responders to specific locations such as specific floors or specific buildings on a campus.
If Customer chooses to use enhanced PS/ALI functions, Customer is responsible for acquiring PS/ALI service at Customer's sole expense. It is Customer's sole responsibility to inform Cox Business and to confirm with Customer's PBX vendors and manufacturers that CPE is compatible with the technical requirements needed to provide PS/ALI using the trunking services purchased from Cox Business. Further, it is Customer's sole responsibility to register and maintain location information in the ALI Database and ensure that the PBX switch employs telephone numbers provided with the Cox Business services for 911 signaling. Customer is responsible for testing the ability to dial 9-1-1 from lines associated with PBX systems at the time the systems and/or new PBX trunks are installed or upgraded, and is responsible for conducting periodic testing thereafter.
Customer Options at Time of Install: Cox Business trunking Customers must inform Cox of Customer's desired 911 configuration. Currently Cox Business supports two 911 configuration options:
1. BILLING TELEPHONE NUMBER ("BTN"): This option may not meet the needs of larger organizations (customer decision) or when one PBX serves multiple physical locations. As a default, Cox Business will register the trunking Circuit BTN in the ALI Database with the Customer's trunking service address. It is the Customer's responsibility to outpulse the trunking Circuit BTN to the PSAP when 911 calls are made from Customer's location. As a default, and where technically supported, Cox Business will transmit the BTN to the PSAP when a 911 call is made over the trunk. Where it is not technically supported for Cox Business to transmit the BTN as a default, Customer must program its equipment to outpulse the BTN. National Emergency Number Association ("NENA") guidelines state that if any PBX that has not implemented a PS/911 enhancement, the BTN should be sent as the telephone number for 9-1-1 calls. (See NENA Technical Information Document No. 03-502, "Trunking for Private Switch 9-1-1 Service," available at www.nena.org.)
2. INDIVIDUAL AUTOMATIC NUMBER IDENTIFICATION ("ANI"): This option is more expansive than option 1 and can be used, for example, with campus, private network or multi-site environments and/or multi-floor building locations. If the Customer informs Cox Business it wishes to utilize enhanced PS/ALI functions, Customer must confirm that the configuration of CPE and Cox Business facilities permits such PS/ALI functions. The Customer is responsible for retaining a PS/ALI vendor and setting up and maintaining such enhanced PS/ALI arrangements. Customer must inform Cox Business that it wishes to utilize enhanced PS/ALI functions in order that Cox Business may pass telephone numbers outpulsed from the Customer's equipment to the PSAP. Customer is then responsible for ensuring that CPE outpulses the telephone numbers provided with the Cox Business service to the PSAP when a 911 call is placed from Customer's location.
Customer may contact their local Cox Business office with any questions regarding this e911 practice. Cox recommends Customer review carefully the following NENA documents available at www.nena.org:
NENA Technical Information Document (NENA 03-502), "Trunking for Private Switch 9-1-1 Service" NENA Standard (NENA 06-003), "Private Switch (PS) E 9-1-1 Database Standard".
This Practice Statement is subject to change from time to time. Notices referenced in this document must be provided in accordance with the notice requirements set forth in the applicable agreement between Cox Business and the Customer. This Practice Statement supersedes and replaces any 911 or e911 Practice or Policy Statement that Cox Business may have provided to Customer in the past, except that this Practice Statement does not supersede any 911 or e911 language contained in any written agreement between Cox and Customer.


text:
How Students Can Prepare for an Art Career
Interview with Chrissy Garrett of SCAD Savannah College of Art & Design (SCAD) is a leading art school located in Savannah, Georgia with campuses in Atlanta, Hong Kong and southern France. With over 9,000 students enrolled, they offer majors in many fields of art and design along with innovative learning experiences. Chrissy Garrett is a Career Development Specialist there, whose background ... Full Story
Top Education Articles
What Makes a Good Art Instructor?This article was originally published on FineArtTips.com. Gary Holland began his studies alone, learning by copying famous artist's paintings. Later he would study with such instructors as Daniel Green, Ramon Kelley and Zhang Wen Xin. His recent work includes paintings that reflect the life and culture of the world's poorest children. Combining art with compassion, Gary Holland founded the For the ...Rated: +3
Transition from Student Designer to Career DesignerIt can be difficult to merge into the graphic design "fast lane." The transition from student designer to a first career job can be terrifying. The feelings of being unprepared and/or overwhelmed are totally normal. As I spend time mentoring students at a college level, I have witnessed these emotions every semester. Put your fears aside. With some research and preparation, ...Rated: +2
10 Ways to Make an Art Internship a Permanent JobFrom super intern to full-time pro! Internships. College credit or learning experience..or both? Definitely both, but also consider it as an opportunity to become a full-time player in the design industry rather than just a student trying to pass a course. Internships should be treated as a real job, even if you're not paid! Your employer is giving you the giving ...Rated: +8
Important Art Skills They Don't Teach in Design SchoolArt schools teach you the fundamentals of art. Your curriculum probably covered art history, how it evolved from ancient times and how it has developed in recent years — the evolution of technology has guided art from canvas to computer screen. Art school also covered topics such as the elements of art (line, shape, color, etc.) and has given some training ...Rated: +7
Transition from Student Designer to Career DesignerApproach the On Ramp Following are some things to consider before you put your hands on the wheel. During this step in the process, you'll do some industry and market research to better inform your job search process. 1. Do your homework Study the market you wish to live in. Determine whether you'd prefer to work for an agency or ...Rated: +2
Art Students: Portfolio Show Dos & Don'tsThe last semester of your senior year in design school is pretty tough. It's even tougher when your years of class taking and projects have a chance to become a piece in your portfolio. Pieces that together, will hopefully allow you to standout from the competition and get your perfect graphic design job straight after graduation. [widget:lead_gen] What's the name of ...Rated: +5
Earn Your Degree in Web Design
Receiving an education in web design could be the way to turn your love for the web into something that will pay the bills! Web design is more than HTML; it ...
ArtBistro Quizzes
Where Should You Go to College?
Hey there future engineers, writers, scientists, artists, and everyone else: You know you're ready for the challenge ...Rate This | Taken 332,261 times
What Kind of Artist Are You?
Want to know which medium that suits you? Find out if you are more of a photographer, ...Rated: +18 | Taken 44,342 times
ArtBistro School Finder
Save time in your search for a degree program. Use ArtBistro's School Finder to locate schools online and in your area.


text:
Come and join in after school activities to create unique creations from recycled items.
Held on Wednesdays from 3.45pm-4.45pm during school terms.
The activities are designed for school aged children from 8 to 12 years old.
Bookings are NOT required - simply turn-up shortly before commencement time.
Program for Term 1, 2017
1 Giant Library Lover's Day collage project
8 Pet Rocks
15 Library Lovers' Day chalk mural
22 Hatch a Troll (make your very own Troll)
1 Wednesday Club Game-Show Day
8 2D Eggs display project
15 Easter Craft woolen eggs week 1
22 Easter Craft woolen eggs week 2
29 Easter Craft woolen eggs week 3
7 Easter Party and Movie