1.解压软件包mkdir /application/
tar zxvf mysql-5.5.32-linux2.6-x64.tar.gz -C /application/
2. 创建目录和用户
groupadd mysql
useradd -s /sbin/nologin -g mysql -M mysql #-s 不允许登录, -M 不需要家目录
3. 做软连接,去掉版本号
ln -s /application/mysql-5.5.32-linux2.6-x86_64 /application/mysql
4. 选择配置样例
[root@linux-node1 mysql]# cd support-files/
[root@linux-node1 support-files]# ls *.cnf
my-huge.cnf my-large.cnf my-small.cnf
my-innodb-heavy-4G.cnf my-medium.cnf
个人实验一般选 small.cnf
my-small.cnf为小型系统示例MySQL配置文件。
#
#这是一个仅使用MySQL的内存少(<= 64M)的系统
#不时,mysqld守护进程很重要
#不用太多的资源。
/bin/cp /application/mysql/support-files/my-small.cnf /etc/my.cnf #将配置文件覆盖到主配置中
5.创建数据库目录
mkdir -p /application/mysql/data
chown -R mysql.mysql /application/mysql/
6. 初始化安装
/application/mysql/scripts/mysql_install_db --basedir=$mysql --datadir=$mysql/data --user=mysql
7. 复制启动脚本到/etc/init.d/下
MySQL二进制默认安装目录是/usr/local/mysql, 所以需要替换掉启动脚本中的路径:
sed -i 's#/usr/local/mysql#/application/mysql#g' /application/mysql/support-files/mysql.server
sed -i 's#/usr/local/mysql#/application/mysql#g' /application/mysql/bin/mysqld_safe
/bin/cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
8.启动mysqld 服务
/etc/init.d/mysqld start
9. 检查端口
netstat -an | grep 3306
lsof -i:3306
ps -ef | grep mysql
[root@linux-node1 support-files]# netstat -an | grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
[root@linux-node1 support-files]# lsof -i:3306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 24401 mysql 10u IPv4 127222 0t0 TCP *:mysql (LISTEN)
[root@linux-node1 support-files]# ps -ef | grep mysql
root 24160 1 0 15:53 pts/1 00:00:00 /bin/sh /application/mysql/bin/mysqld_safe --datadir=/application/mysql/data --pid-file=/application/mysql/data/linux-node1.openstack.com.pid
mysql 24401 24160 0 15:53 pts/1 00:00:00 /application/mysql/bin/mysqld --basedir=/application/mysql --datadir=/application/mysql/data --plugin-dir=/application/mysql/lib/plugin --user=mysql --log-error=/application/mysql/data/linux-node1.openstack.com.err --pid-file=/application/mysql/data/linux-node1.openstack.com.pid --socket=/tmp/mysql.sock --port=3306
root 24426 24086 0 15:53 pts/1 00:00:00 grep mysql
到此安装结束,但是以上9步有点麻烦 写个小脚本一键执行就ok!
前提是目录和路径都ok!
mysql_install.sh
#!/bin/sh
mysql=/application/mysql
groupadd mysql
useradd -s /sbin/nologin -g mysql -M mysql
ln -s /application/mysql-5.5.32-linux2.6-x86_64 $mysql
/bin/cp $mysql/support-files/my-small.cnf /etc/my.cnf
mkdir -p /application/mysql/data
chown -R mysql.mysql /application/mysql/
#tail -1 /etc/passwd
$mysql/scripts/mysql_install_db --basedir=$mysql --datadir=$mysql/data --user=mysql
/bin/cp $mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
sed -i 's#/usr/local/mysql#/application/mysql#g' /application/mysql/support-files/mysql.server
sed -i 's#/usr/local/mysql#/application/mysql#g' /application/mysql/bin/mysqld_safe
/bin/cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
/etc/init.d/mysqld start
netstat -an | grep 3306