[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r197 - GNUnet/doc
[GNUnet-SVN] r197 - GNUnet/doc
Mon, 7 Feb 2005 06:02:46 -0800 (PST)
Date: 2005-02-07 06:02:45 -0800 (Mon, 07 Feb 2005)
New Revision: 197
--- GNUnet/doc/README.mqsql 2005-02-07 13:55:58 UTC (rev 196)
+++ GNUnet/doc/README.mqsql 2005-02-07 14:02:45 UTC (rev 197)
@@ -1,99 +0,0 @@
-How to setup the MySQL database for GNUnet.
-NOTE: This db module does NOT work with mysql v3.23.49 due to a bug
-in mysql. All later versions should be fine, including the 4.0.x
-series. Current devel version is 4.0.22 on debian/unstable.
- + On up-to-date hardware where mysql can be used comfortably, this
- module will have better performance than the other db choices
- (according to our tests).
- + Its often possible to recover the mysql database from internal
- inconsistencies. The other db choices do not support repair
- (gnunet-check cannot fix problems internal to the dbmgr!).
- For example, we have seen several cases where power failure
- has ruined a gdbm database beyond repair.
- - Memory usage (Comment: "I have 1G and it never caused me trouble")
- - Manual setup
-MANUAL SETUP INSTRUCTIONS
- 1) in /etc/gnunet.conf, set
- sqstore = "sqstore_mysql"
- 2) Then access mysql as root,
- # mysql -u root -p
- and do the following. [You should replace $USER with the username
- that will be running the gnunetd process].
- CREATE DATABASE gnunet;
- GRANT select,insert,update,delete,create,alter,drop
- ON gnunet.* TO address@hidden;
- SET PASSWORD FOR address@hidden('$the_password_you_like');
- FLUSH PRIVILEGES;
- 3) In the $HOME directory of $USER, create a ".my.cnf" file
- with the following lines
- Thats it. Note that .my.cnf file is a security risk unless its on
- a safe partition etc. The $HOME/.my.cnf can of course be a symbolic
- link. Even greater security risk can be achieved by setting no
- password for $USER. Luckily $USER has only priviledges to mess
- up GNUnet's tables, nothing else (unless you give him more,
- of course).
- 4) Still, perhaps you should briefly try if the DB connection
- works. First, login as $USER. Then use,
- # mysql -u $USER
- mysql> use gnunet;
- If you get the message "Database changed" it probably works.
- [If you get "ERROR 2002: Can't connect to local MySQL server
- through socket '/tmp/mysql.sock' (2)" it may be resolvable by
- "ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock"
- so there may be some additional trouble depending on your mysql setup.]
- REPAIRING TABLES
- - Its probably healthy to check your tables for inconsistencies
- every now and then.
- - If you get odd SEGVs on gnunetd startup, it might be that the mysql
- databases have been corrupted.
- - The tables can be verified/fixed in two ways;
- 1) by shutting down mysqld (mandatory!) and running
- # myisamchk -r *.MYI
- in /var/lib/mysql/gnunet/ (or wherever the tables are stored).
- Another repair command is "mysqlcheck". The usable command
- may depend on your mysql build/version. Or,
- 2) by executing
- mysql> REPAIR TABLE gn070;
- EFFICIENCY ISSUES
- If you suffer from too slow index/insert speeds,
- you might try to define /etc/gnunet.conf option
- MYSQL_DELAYED = YES
- for small efficiency boost. The option will let MySQL bundle multiple
- inserts before actually writing them to disk. You shouldn't use this
- option unless you're an (my)sql expert and really know what you're doing.
- Especially, if you run into any trouble due to this, you're on your own.
- If you have problems related to the mysql module, your best
- friend is probably the mysql manual. The first thing to check
- is that mysql is basically operational, that you can connect
- to it, create tables, issue queries etc.
Copied: GNUnet/doc/README.mysql (from rev 196, GNUnet/doc/README.mqsql)
|[Prev in Thread]
||[Next in Thread]|
- [GNUnet-SVN] r197 - GNUnet/doc,