====== Portable MySQL setup ====== - the MySQL is just the original MySQL in binary package format - initial data folder ./scripts/mysql_install_db - give data folder permission sudo chown -R mysql data/ - start demon sudo ./bin/mysqld_safe --defaults-file=./etc/my.cnf -h 127.0.0.1 - or try ./bin/mysql_upgrade --defaults-file=./etc/my.cnf -h 127.0.0.1 -u root -p - test mysql --defaults-file=./etc/my.cnf -h 127.0.0.1 dbName - initial password mysqladmin -u root password MyPass - stop server mysqladmin --defaults-file=./etc/my.cnf -h 127.0.0.1 -u root -p shutdown - note: .frm file is the database file ====== config files ====== * ./etc/my.cnf # Example MySQL config file for small systems. # # This is for a system with little memory (<= 64M) where MySQL is only used # from time to time and it's important that the mysqld daemon # doesn't use much resources. # # You can copy this file to # /etc/my.cnf to set global options, # mysql-data-dir/my.cnf to set server-specific options (in this # installation this directory is /usr/local/mysql/data) or # ~/.my.cnf to set user-specific options. # # In this file, you can use all long options that a program supports. # If you want to know which options a program supports, run the program # with the "--help" option. # The following options will be passed to all MySQL clients [client] #password = your_password port = 3306 socket = '/Volumes/Paris/.shios/tmp/mysql.sock' # Here follows entries for some specific programs # The MySQL server [mysqld] port = 3306 socket = '/Volumes/Paris/.shios/tmp/mysql.sock' #--shi skip-networking skip-innodb datadir='/Volumes/Paris/.shios/data' #--end skip-locking key_buffer_size = 16K max_allowed_packet = 1M table_open_cache = 4 sort_buffer_size = 64K read_buffer_size = 256K read_rnd_buffer_size = 256K net_buffer_length = 2K thread_stack = 128K [mysql.server] user=mysql basedir='/Volumes/Paris/.shios/mysql-5.1.40-osx10.4-i686' # Don't listen on a TCP/IP port at all. This can be a security enhancement, # if all processes that need to connect to mysqld run on the same host. # All interaction with mysqld must be made via Unix sockets or named pipes. # Note that using this option without enabling named pipes on Windows # (using the "enable-named-pipe" option) will render mysqld useless! # #skip-networking server-id = 1 # Uncomment the following if you want to log updates #log-bin=mysql-bin # binary logging format - mixed recommended #binlog_format=mixed # Uncomment the following if you are using InnoDB tables #innodb_data_home_dir = /usr/local/mysql/data/ #innodb_data_file_path = ibdata1:10M:autoextend #innodb_log_group_home_dir = /usr/local/mysql/data/ # You can set .._buffer_pool_size up to 50 - 80 % # of RAM but beware of setting memory usage too high #innodb_buffer_pool_size = 16M #innodb_additional_mem_pool_size = 2M # Set .._log_file_size to 25 % of buffer pool size #innodb_log_file_size = 5M #innodb_log_buffer_size = 8M #innodb_flush_log_at_trx_commit = 1 #innodb_lock_wait_timeout = 50 [mysqldump] quick max_allowed_packet = 16M [mysql] no-auto-rehash # Remove the next comment character if you are not familiar with SQL #safe-updates [myisamchk] key_buffer_size = 8M sort_buffer_size = 8M [mysqlhotcopy] interactive-timeout ====== Tools and Software ====== * MySQL Workbench for SQL Database design: http://www.mysql.com/products/workbench/