系统:
- Ubuntu 16.04 x64
- MySQL 5.5.16
##一、准备
1.获取 mysql-5.5.16-linux2.6-x86_64.tar.gz 二进制安装文件
mysql 官网下载页面选择 Linux-Generic 下的 Linux - Generic 2.6 (x86, 64-bit), Compressed。
你可以在ubuntu 中使用 wget 命令获取,或者任何一种下载工具都可以,只要有 mysql 的 tar.gz 安装文件就行。
wget http://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.5/mysql-5.5.16-linux2.6-x86_64.tar.gz
2.安装 mysql 所使用的依赖
sudo apt-get install libaio1
##二、安装步骤
安装步骤参考mysql官方安装文档
# 表示当前是 root 用户
$ 表示当前普通用户
pwd 表示当前所在目录
1.添加 mysql 用户组 # groupadd mysql
2.添加 msyql 用户到 mysql 用户组 # useradd -r -g mysql mysql
3.解压 mysql-5.5.16-linux2.6-x86_64.tar.gz 到 /usr/local
进入 /usr/local # cd /usr/local
我的 tar.gz 文件路径是 /home/user/mysql-5.5.16-linux2.6-x86_64.tar.gz,你根据你的mysql安装文件路径调整命令参数
pwd: /usr/local # tar zxvf /home/user/mysql-5.5.16-linux2.6-x86_64.tar.gz
4.在 /usr/local 下添加名为 mysql 指向解压的文件夹的软连接
pwd: /usr/local # ln -s mysql-5.5.16-linux2.6-x86_64 mysql
5.进入 mysql 目录
pwd: /usr/local # cd mysql
6.设置 mysql 目录的拥有者和所属的用户组
pwd: /usr/local/mysql # chown -R mysql .
# chgrp -R mysql .
7.执行mysql 安装脚本
pwd: /usr/local/mysql
# scripts/mysql_install_db --user=mysql
注意:这里可能会提示缺少libaio1这个库,只要安装即可:
sudo apt-get install libaio1
8.再次设置 mysql 目录的拥有者
pwd: /usr/local/mysql # chown -R root .
9.设置 data 目录的拥有者
pwd: /usr/local/mysql # chown -R mysql data
三、安装后配置
1.复制 mysql 配置文件
pwd: /usr/local/mysql # cp support-files/my-medium.cnf /etc/my.cnf
注意:mysql5.6之后已经没有了 large,medium等这些文件了...本文使用的是my-default.cnf来作为源文件拷贝到my.cnf
2.启动 mysql
pwd: /usr/local/mysql # bin/mysqld_safe --user=mysql &
3.初始化 root 用户密码
pwd: /usr/local/mysql # bin/mysqladmin -u root password 'new_password'
4.复制mysql.server 脚本
pwd: /usr/local/mysql
# cp support-files/mysql.server /etc/init.d/mysql.server
好了,mysql配置基本完成 。可以查看mysql的状态,结果可能是 "MySQL is runnin"或者是" MySQL is not running"
$ sudo /etc/init.d/mysql.server status
如果地切顺利,mysql是正常运行的,而且可以通过 mysql客户端,进入mysql
$ /usr/local/mysql/bin/mysql -u root -p
注意:这里登录进去后要配置下允许root用户远程登录:
MySQL> GRANT ALL PRIVILEGES ON *.* TOroot@"%" IDENTIFIED BY '123456' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)
可以使用命令让mysql 停止运行
$ sudo /etc/init.d/mysql.server stop
让mysql 启动
$ sudo /etc/init.d/mysql.server start
查看状态
$ sudo /etc/init.d/mysql.server status
或者使用service命令,让mysql 启动,停止
$ sudo service mysql.server [status|start|stop]
##四、可选配置
1.让mysql开机自己启动
$sudo update-rc.d -f mysql.server defaults
如果不想让mysql开机自己启动,可以使用
$sudo update-rc.d -f mysql.server remove
2.把 /usr/local/mysql/bin/mysql 命令加到用户命令中,这样就不用每次都加 mysql命令的路径
$ sudo ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql
现在就直接可以使用 mysql 命令了
$ mysql -u root -p
需要注意的是我用之前版本mysql,配置数据库默认编码是在 [mysqld]下加 default-character-set=utf8 而 mysql 5.5.17用这个配置,似乎是错的,将导致 mysql 不能正常启动。将配置改为 character-set-server=utf8 即可。
##参照: