版本

这里安装的是Mysql5.7.28,不同版本的Mysql安装方式可能略有不同。

创建相关文件夹

mkdir -p /usr/local/mysql/data

其中,

/usr/local/mysql 用作mysql的安装主文件夹,就mysql的基本工具、类库都在这里面

/usr/local/mysql/data 用作mysql的数据文件夹,初始化数据库后会生成一堆文件在这里面

如果需要修改安装的文件夹,本文章后续部分需要将所有的/usr/local/mysql/usr/local/mysql/data替换为你想要安装的路径。

下载tar包

cd /usr/local
wget  https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz 

您也可以手动上传到服务器上。

解压

tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.28-linux-glibc2.12-x86_64/* /usr/local/mysql

总之,就是将安装包解压到你的安装主目录/usr/local/mysql里面去。

创建用户组

groupadd mysql

useradd -r -g mysql mysql

创建单独的用户组的目的,是为了防止别的用户不小心对Mysql做出错误的操作。

添加权限

chown -R mysql:mysql /usr/local/mysql

安装libaio

yum install libaio

Mysql使用到了libaio的异步IO

初始化数据库

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 

(这一步成功以后,会在数据文件夹下生成对应的配置文件等信息,即datadir对应目录)

获取密码

上一步初始化成功的话,最后一行会打印初始化的数据库密码,复制下来备用,如x&csqF0P9puY。

修改配置文件

看下/etc下是否已经存在my.cnf

理论上自己会生成,然后里面都是默认配置。

修改后的配置如下(根据需要来修改):

[client]
socket=/tmp/mysql.sock

[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
user=mysql
port=3306

## Disabling symbolic-links is recommended to prevent assorted security risks
##symbolic-links=0

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

[mysqld_safe]
log-error=/usr/local/mysql/data/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid

添加到系统服务中

#加入到系统服务,这样就可以用service mysqld start 来启动数据库啦,比较方便
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

#开启启动,根据需要而定
chkconfig --add mysqld
chkconfig mysqld on

修改密码

#连接
/usr/local/mysql/bin/mysql -uroot –p

#修改密码,修改为你想要的密码
SET PASSWORD = PASSWORD('aoaoaoaoao');

#开启访问权限
use mysql;   
update user set host = '%' where user = 'root';

#退出
quit;

初始化密码得改掉。

数据库常用命令

服务方式启动(推荐):

service mysqld restart/start/stop

其他方式:

启动:/usr/local/src/mysql/bin/mysqld_safe&

连接:/usr/local/src/mysql/bin/mysql -uroot -p

停止:/usr/local/src/mysql/bin/mysqladmin -u root -p shutdown