因为本地已经使用yum 安装过mysql, 要想安装多个需要下载包安装
下载官网的linux包 : 选择linux-Generic(centos)我下载的是 mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
2. 解压到/usr/local/ 下面, 更名mysql
#tar xzvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
#mv mysql-5.7.18-linux-glibc2.5-x86_64 /usr/local/mysql
3. 创建文件
在mysql文件夹下面创建data/ 文件夹(保存数据库数据,也可以放在其他的位置)
在mysql文件夹下面创建tmp/ 文件夹
创建my.cnf配置文件,(单机只有一个数据库不用配置,单机多数据库必须创建, 并配置相应的内容):
[client]
socket = /usr/local/mysql/mysql.sock
[mysqld]
basedir= /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
socket = /usr/local/mysql/mysql.sock
3. 改变文件夹权限
创建mysql用户和用户组:
#groupadd mysql
#useradd mysql -g mysql
#chown -R mysql:mysql mysql/
#chmod -R 755 mysql/
4. 安装依赖包
#yum -y install make gcc-c++ cmake bison-devel ncurses-devellibaio libaio-devel
4. 初始化
两种方式:
一种直接初始化,使用默认的配置文件,不用指定
#/usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
最后一行可以得到初始化之后的密码 类似: [Note] A temporary password is generated for root@localhost: <gxU*CxtK2k%
另外一种指定配置文件初始化:
#/usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/my.cnf --initialize --user=mysql
#/usr/local/mysql/bin/mysql_ssl_rsa_setup --defaults-file=/usr/local/mysql/my.cnf
多机的情况下必须主要my.cnf文件的位置:
5.7版本寻找my.cnf的文件的顺序是
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf
所以,要想使用到当前数据库自己文件夹下的的my.cnf文件,就必须在前面的三个文件的地址上面没有配置文件才可以
5. 启动数据库:
前台启动:
#/usr/local/mysql/bin/mysqld_safe --defaults-file=/usr/local/mysql/my.cnf --user=mysql
服务启动:
#/usr/local/mysql/support-files/mysql.server start
6. 登录更改密码:
第一个数据库可以直接使用进入
#/usr/local/mysql/bin/mysql -u root -p
第二个数据库必须使用进入
#/usr/local/mysql/bin/mysql --socket=/usr/local/mysql/mysql.sock --port==3306 -u root -p
使用初始化的时候得到的密码 <gxU*CxtK2k%
进入后直接修改密码
mysql>alter user 'root'@'localhost' identified by '123456';
mysql>use mysql;
msyql>update user set user.Host='%' where user.User='root';
mysql>flush privileges;
mysql>quit
7. 创建链接
mysql命令
#ln -s /usr/local/mysql/bin/mysql /usr/bin
service mysql 命令
#ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql