Linux下安装mysql数据库

第一步:下载mysql

在Linux终端使用wget命令下载网络资源:

wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
1
1
1:检查是否本地已经安装了MySQL

rpm -qa | grep mysql
1
1
2:卸载以前的mysql

rpm -e 已经存在的MySQL全名
1
1
第二步:解压文件

接下来去到移动后的目录cd /usr/local ,然后解压

tar zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
1
1
解压后为了方便后面操作可把解压后文件名修改为mysql:  

mv mysql-5.7.17-linux-glibc2.5-x86_64 mysql
1
1
第三步:配置启动文件

然后去到 mysql 的 support-files目录下

1、复制my-default.cnf 到 /etc/my.cnf (mysqld启动时自动读取)

cp my-default.cnf /etc/my.cnf
1
1
注意:如果你在安装时Linux虚拟机时同时安装了默认的mysql,此时操作以上步骤,终端将会提示你文件已存在是否覆盖,输入yes覆盖即可。
2、配置数据库编码

vi /etc/my.cnf
1
1
在这份文件中可以添加以下配置信息(如果有修改即可)

[mysql]
default-character-set=utf8

[mysqld]
default-storage-engine=INNODB
character_set_server=utf8

3、复制mysql.server到/etc/init.d/ 目录下【目的想实现开机自动执行效果】

执行命令(mysql是服务名):  

cp mysql.server /etc/init.d/mysql
1
1
4、修改 /etc/init.d/mysql参数

vi /etc/init.d/mysql
1
1
给与2个目录位置

basedir=/usr/local/mysql
datadir=/home/local/mysql/data 实际需求:修改为/home/local/mysql/data(先创建此目录)
其他有data的地方也修改为home目录

5、出于安全便利,创建一个操作数据库的专门用户

  >1)、groupadd mysql #建立一个mysql的组
  >2)、useradd -r -g mysql mysql #建立mysql用户,并且把用户放到mysql组
  >3)、passwd mysql #给mysql用户设置一个密码 123asd!@#
  4)、给目录/usr/local/mysql更改拥有者 chown -R mysql:mysql /usr/local/mysql/
5)、给存放data的目录/home/local/mysql更改拥有者:chown -R mysql:mysql /home/local/mysql/
第四步:初始化 mysql 的数据库

首先去到mysql的bin目录

1.初始化

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

生成出一个data目录,代表数据库已经初始化成功
并且mysql的root用户生成一个临时密码:***(最好先记录这个临时密码) %*<oR5QAAOs,

2.给数据库加密

./mysql_ssl_rsa_setup --datadir=/home/local/mysql/data

3.启动mysql(为了不让进程卡主,可在启动mysql的命令后加上&代表此进程在后台运行)

./mysqld_safe --user=mysql &

4.检查ps -ef|grep mysql

发现有进程便代表启动成功。

第五步:进入客户端

1.登录:

./mysql -uroot -p #p后输入之前的临时密码

2.修改密码

set password=password('新密码');set password=password('123asd!@#');

第六步:设置远程访问

1,在远程访问之前需先打开centos7的端口:

1):开启端口:
先退出mysql命令行。
firewall-cmd --zone=public --add-port=3306/tcp --permanent
1
1
2):重启防火墙:

firewall-cmd --reload

2,授权

mysql>grant all privileges on *.* to 远程访问用户名@'%' identified by '用户密码';
grant all privileges on *.* to root@'%' identified by '123asd!@#';
mysql>select host,user from user(这里有问题,应该是数据库mysql中的表user,所以命令应该是select host,user from mysql.user);【多出1条远程登录用户记录】
mysql>flush privileges;(刷新)

此时就可以使用远程机器进行访问啦!

解析:使用mysql -h主机ip -u用户名 -p密码即可进行远程访问

第七步:设置开机自启动

1、添加服务mysql

chkconfig --add mysql 【mysqld -install】

2、设置mysql服务为自动

chkconfig mysql on

3、重启查看进程

init 6

ps -ef|grep mysql

第八步:配置环境变量

为了方便操作,配置环境变量还是有必要的。

vi /etc/profile
export PATH=$JAVA_HOME/bin:/usr/local/mysql/bin:$PATH

Plantform_Endpoint


重启mysql服务
systemctl restart mysql.service

安装中遇到的几个问题:
1、初始化时提示少了libaio库文件 ,yum install libaio
2、启动mysql时,报error,mysqld_safe的586行错误:由于mysqld_safe中data目录的路径未修改为实际data路径(home目录下)
3、启动后,登录mysql时,报/tmp下lock文件的问题,需到/root/tmp下删除这个文件,并重启机器,再次启动mysql后就正常了

原文地址:https://www.cnblogs.com/yjiajia/p/12991165.html