source: pkg/security/vinnie/main/mysql-5.1/trunk/debian/mysql-server-5.1.README.Debian @ 6989

Revision 6989, 4.9 KB checked in by alanbach-guest, 3 years ago (diff)
  • Updated mysql-5.1 from lenny-backports
Line 
1* MYSQL WON'T START OR STOP?:
2=============================
3You may never ever delete the special mysql user "debian-sys-maint". This
4user together with the credentials in /etc/mysql/debian.cnf are used by the
5init scripts to stop the server as they would require knowledge of the mysql
6root users password else.
7So in most of the times you can fix the situation by making sure that the
8debian.cnf file contains the right password, e.g. by setting a new one
9(remember to do a "flush privileges" then).
10
11* WHAT TO DO AFTER UPGRADES:
12============================
13The privilege tables are automatically updated so all there is left is read
14the changelogs on dev.mysql.com to see if any changes affect custom apps.
15
16* WHAT TO DO AFTER INSTALLATION:
17================================
18The MySQL manual describes certain steps to do at this stage in a separate
19chapter.  They are not necessary as the Debian packages does them
20automatically.
21
22The only thing that is left over for the admin is
23 - setting the passwords
24 - creating new users and databases
25 - read the rest of this text
26
27* DOWNGRADING TO 4.0 or 4.1:
28============================
29Unsupported. Period.
30But if you do and get problems or make interesting experiences, mail me, it
31might help others.
32Ok, if you really want, I would recommend to "mysqldump --opt" all tables,
33then purge 4.1, delete /var/lib/mysql, install 4.0 and insert the dumps.  Be
34carefully, though, with the "mysql" table, you might not simply overwrite that
35one as the password for the mysql "debian-sys-maint" user is stored in
36/etc/mysql/debian.cnf and needed by /etc/init.d/ to start mysql and check if
37it's alive.
38
39* SOME APPLICATION CAN NO LONGER CONNECT:
40=========================================
41This application is probably linked against libmysqlclient12 or below and
42somebody has created a mysql user with new-style passwords.
43The old_passwords=1 option in /etc/mysql/my.cnf might help. If not the
44application that inserted the user has to be changed or the application that
45tries to connect updated to libmysqlclient14 or -15.
46
47* NETWORKING:
48=============
49For security reasons, the Debian package has enabled networking only on the
50loop-back device using "bind-address" in /etc/mysql/my.cnf.  Check with
51"netstat -tlnp" where it is listening. If your connection is aborted
52immediately see if "mysqld: all" or similar is in /etc/hosts.allow and read
53hosts_access(5).
54
55* WHERE IS THE DOCUMENTATION?:
56==============================
57Unfortunately due to licensing restrictions, debian currently not able
58to provide the mysql-doc package in any format.  For the most up to date
59documentation, please go to http://dev.mysql.com/doc.
60
61* PASSWORDS:
62============
63It is strongly recommended to set a password for the mysql root user (which
64  /usr/bin/mysql -u root -D mysql -e "update user set password=password('new-password') where user='root'"
65  /usr/bin/mysql -u root -e "flush privileges"
66If you already had a password set add "-p" before "-u" to the lines above.
67
68
69If you are tired to type the password in every time or want to automate your
70scripts you can store it in the file $HOME/.my.cnf. It should be chmod 0600
71(-rw------- username username .my.cnf) to ensure that nobody else can read
72it.  Every other configuration parameter can be stored there, too. You will
73find an example below and more information in the MySQL manual in
74/usr/share/doc/mysql-doc or www.mysql.com.
75
76ATTENTION: It is necessary, that a .my.cnf from root always contains a "user"
77line wherever there is a "password" line, else, the Debian maintenance
78scripts, that use /etc/mysql/debian.cnf, will use the username
79"debian-sys-maint" but the password that is in root's .my.cnf. Also note,
80that every change you make in the /root/.my.cnf will affect the mysql cron
81script, too.
82
83        # an example of $HOME/.my.cnf
84        [client]
85        user            = your-mysql-username
86        password        = enter-your-good-new-password-here
87
88* BIG_ROWS FOR EVEN MORE ROWS IN A TABLE:
89=========================================
90If you ever run out of rows in a table there is the possibility of building
91the package with "-DBIG_ROWS" which, according to a MySQL employee on
92packagers@lists.mysql.com should lead to a 64bit row index (I guess > 2^32
93rows) but also to an approx. 5% performance loss.
94
95* BerkeleyDB Storage Engine
96===========================
97Support for BerkeleyDB has been removed in 5.1, and consequently both the
98have-bdb and skip-bdb configuration options will cause the server to fail.
99Removing the options from /etc/mysql/my.cnf will fix this problem.
100
101* FURTHER NOTES ON REPLICATION
102===============================
103If the MySQL server is acting as a replication slave, you should not
104set --tmpdir to point to a directory on a memory-based filesystem or to
105a directory that is cleared when the server host restarts. A replication
106slave needs some of its temporary files to survive a machine restart so
107that it can replicate temporary tables or LOAD DATA INFILE operations. If
108files in the temporary file directory are lost when the server restarts,
109replication fails.
Note: See TracBrowser for help on using the repository browser.