1.下载安装包
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
2.安装目录 /usr/local/mysql/
tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz (解压文件夹)
mv mysql-5.7.24-linux-glibc2.12-x86_64 mysql-5.7.24(修改文件夹名称)
在mysql-5.7.24根目录使用命令:mkdir data 用于存放数据库一些初始化信息。
3.Linux系统建立一个mysql账号与用户(可以理解为一个登陆凭证,就好像现在物业公司的门禁系统一样)
useradd -r -g mysql mysql #创建mysql用户
groupadd mysql #创建用户组mysql
useradd -r -s /sbin/nologin -g mysql -d /usr/local/mysql/mysql-5.7.24 #-r参数表示mysql用户是系统用户,不可用于登录系统,创建用户mysql并将其添加到用户组mysql中
chown -R mysql.mysql /usr/local/mysql/mysql-5.7.24 #改变目录的权限
4.初始化Mysql
cd /usr/local/mysql/mysql-5.7.24 进入文件下
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/mysql-5.7.24 --datadir=/usr/local/mysql/mysql-5.7.24/data/ (初始化命令)
ps:如果初始化报错./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file:------yum install -y libaio //安装后在初始化就OK了
5.修改配置项
说明:5.7.6之后的版本初始化数据库不再使用mysql_install_db,而是使用: bin/mysqld --initialize
#将mysql/目录下除了data/目录的所有文件,改回root用户所有
chown -R root .
#mysql用户只需作为mysql-5.7.22/data/目录下所有文件的所有者
chown -R mysql data
复制启动文件
cp support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
cp bin/my_print_defaults /usr/bin/
修改启动脚本
vi /etc/init.d/my.cnf
#加入环境变量,编辑 /etc/profile,这样可以在任何地方用mysql命令了
vim /etc/profile
#添加mysql路径,加入下面内容,按ESC-->:wq保存
export PATH=$PATH:/usr/local/mysql/mysql-5.7.24/bin
#刷新立即生效
source /etc/profile
修改mysql配置项
vim /etc/my.cnf
6.启动Mysql
service mysqld start
如启动失败,删除 /usr/local/mysql-5.7.22/data下所有文件,重新执行初始化再启动
7.登录
mysql -uroot (登录命令)
将usr目录下的mysql.sock文件软连接到tmp目录下
ln -s /usr/local/mysql/data/mysql.sock /tmp/mysql.sock
现在是可以登录了但发现需要密码,原来5.7后MySQL会生成一个随机密码,
我没有找到存放密码的文件,就只能去强制修改密码了。
在my.cnf中加上skip-grant-tables后 service mysqld restart
登录后执行
update mysql.user set authentication_string=PASSWORD('123456') where User='root';
flush privileges;
执行成功后将my.cnf 文件改回去,重启MySQL,使用新密码登录,MySQL已安装完成。
mysql -uroot -p123456 (密码登录)
但是执行sql的时候发现一直报错,
使用命令alter user user() identified by "123456";重新修改下密码
9.建立远程连接
按照上面的方式安装完成之后还不能进行远程的访问,需要修改允许远程连接,步骤如下:
grant all privileges on *.* to root@'%' identified by '123456' with grant option;
配置完成后发现通过电脑本地的navicat连接该数据库连不上,还有是防火墙的问题
使用命令service iptables stop 关掉防火墙navicat连接成功。所以我们还需要对防火墙的配置进行修改
至此MySQL的安装就完成了。
感谢博主提供:https://blog.csdn.net/xiaosong_2016/article/details/83309612