Ubuntu下的免安装MySQL
全面转到Linux下工作了,以前windows下的一些服务,数据库都要一步步转过来了。apache,tomcat,jboss等轻松搞定,就是这个mysql竟然折腾了2,3天。主要是为了保证copy过来简单配置就可以使用,所以没有使用其默认安装路径(保持windows下的习惯,Server 统一放在 myServeres目录下)。结果配置文件,权限等折腾了半天。
好了,言归正传。首先描述下我的系统环境:Ubuntu8.04.1, 安装了build-essential 11.3 ,g++ 4.2.3
下载mysql
网址:
http://dev.mysql.com/downloads/mysql/5.1.html
我下载的是5.1版的 Linux (non RPM packages) 包, windows Without installer (unzip in C:\) 包(这个包的用处下面说明).
2. 解压mysql到~/myServeres/ 下, 改目录名为 mysql51 (其实你放在哪里都行,只要你有权限)
解压 Windows Without installer (unzip in C:\) 包,将里面的data目录 复制到 mysql51目录下. (这点非常重要呀
3. 设置mysql51 及其子目录,文件的 权限,保证你的启动mysql的用户拥有读写权限.
4. 编写启动脚本 mysql.sh, 注意依据情况修改MYSQL_HOME 的路径呀
引用:
#!/bin/bash
# Path to mySQL
MYSQL_HOME="/home/james/myServeres/mysql51"
# Check for required environment variables.
if [ -z "$MYSQL_HOME" ];
then
echo Error: MYSQL_HOME environment variable is not set.
exit 2
fi
# paser command params
case "$1" in
start)
#/var/run/mysqld/mysqld.sock
if test -e $MYSQL_HOME/mysqld.sock
#$MYSQL_HOME/bin/mysqladmin ping --socket=$MYSQL_HOME/mysqld.sock >nul 2>&1
then
echo MySQL already Start!
else
exec $MYSQL_HOME/bin/mysqld --no-defaults --user=james --basedir=$MYSQL_HOME --character-sets-dir=$MYSQL_HOME/share/charsets --language=$MYSQL_HOME/share/english --character-set-server=gb2312 --socket=$MYSQL_HOME/mysqld.sock
fi
;;
stop)
if test -e $MYSQL_HOME/mysqld.sock
#$MYSQL_HOME/bin/mysqladmin ping --socket=$MYSQL_HOME/mysqld.sock >nul 2>&1
then
echo please input mysql user name:
read name
echo please input mysql password:
read password
exec $MYSQL_HOME/bin/mysqladmin shutdown --user=$name --password=$password --socket=$MYSQL_HOME/mysqld.sock
fi
;;
*)
echo "Usage: mysql.sh {start|stop}"
;;
esac
exit 0