(---------真ex,csdn自动把我的文章设置为收费,吃木目太难看---------)

1.下载mysql安装包

下载地址:MySQL :: Download MySQL Community Server (Archived Versions)(下面19有网盘可自行选择)

2.上传

将下载的mysql安装包mysql-5.7.24-linux-glibc2.12-x86_64.tar通过ftp工具上传到linux主机上(我这里上传到/usr/local/目录下)。

3.解压

首先我们需要进入到/usr/local/目录下

 cd /usr/local/

进入后,解压安装包(tar没有安装请见下面的19)

tar zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz 

4. 创建新的用户组和新的用户,用来管理mysql,提高安全性

添加用户组:mysql

groupadd mysql

添加用户:mysql

 useradd -r -g mysql mysql

我们可以检验一下是否创建成功

id mysql

出现这个就是添加成功了

5.修改mysql文件夹名称

为了方便查看,修改一下mysql文件夹的名称:mysql5.7

mv mysql-5.7.24-linux-glibc2.12-x86_64 mysql5.7

6.创建数据存储目录,日志目录和mysqld.log日志文件

我们现在处在的目录是/usr/local/,在这目录下执行

mkdir ./mysql5.7/{data,logs}

可以进入mysql5.7查看一下是否创建成功

既然验证的时候进入mysql5.7目录了,那就进去

cd mysql5.7/

在这个目录下创建日志文件

touch logs/mysqld.log

7.设置data和log目录的读写权限

chmod 777 -R {data,logs}

8.修改当前目录拥有者为mysql用户

chown -R mysql:mysql ./

不放心的话,可以用ls -l查看一下文件所属用户

9.修改/etc/my.cnf配置文件

进入my.cnf配置文件添加配置

vi /etc/my.cnf

配置如下

[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql5.7
datadir=/usr/local/mysql5.7/data
socket=/usr/local/mysql5.7/mysql.sock
# 开启ip绑定
#bind-address = 0.0.0.0
log_timestamps = SYSTEM
open_files_limit=30000
max_connections=3000
#控制其通信缓冲区的最大长度
max_allowed_packet=256M
# #设置忽略大小写(简单来说就是sql语句是否严格),默认库名表名保存为小写, 不区分大小写
lower_case_table_names = 1
#
# # 开启慢查询
#slow_query_log=on
#slow_query_log_file=/usr/local/mysql5.7/log/slow-query.log
#
[mysqld_safe]
log-error=/usr/local/mysql5.7/logs/mysqld.log
pid-file=/usr/local/mysql5.7/data/mysqld.pid
# #指定客户端连接mysql时的socket通信文件路径
[client]
socket=/usr/local/mysql5.7/mysql.sock
default-character-set=utf8

注意:其中所有路径如果不是和我的一样的话,都需要修改

其中刚进入时是‘普通模式’,我们需要点‘i’键进入插入模式,然后将内容粘贴进去。当粘贴完成后,按esc退出插入模式,然后点‘:wq’退出来。

10.初始化数据库

当前mysql5.7目录下(安装目录)执行下列命令:

 

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

其中光标指的地方是临时密码,我们需要记下
注意:如果需要重新初始化配置,需要将data目录下的文件清空,否则初始化会失败

11.添加开机自启动

在mysql5.7的目录下执行下列语句,把启动脚本放到开机初始化目录

 

cp /usr/local/mysql5.7/support-files/mysql.server /etc/init.d/mysqld

注意:如果权限不够可以在最开头加上 sudo

然后在mysql5.7目录下执行下面语句

 chkconfig --add mysqld

12.启动mysql服务

service mysqld start

13.登录mysql

开启mysql服务后,我们就可以登录mysql,通过上面的那个临时密码登录

./bin/mysql -uroot -p 

注意:密码输入时是看不到输入内容的,所以还是慢慢输入,本人输错好几次

问题:

(1)出现error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory错误。

解决:建立一个libncurses.so.5的软连接,指向6.3版本,如下面语句所示:

sudo ln -s /usr/lib64/libncurses.so.6.3 /usr/lib64/libncurses.so.5

其中版本可能每个人不一样,我们可以用下面的语句查看自己的版本

//进入该目录下
cd /usr/lib64/

find -name "*libncurses*"

我的是6.3,所以我就用6.3建立软连接

(2)出现error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory错误

sudo ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5

和上面是一样的操作,就不赘述。

14.设置MySQL用户密码

 

alter user root@localhost identified by '123456';

其中root就是账号,localhost的意思就是root在本地登录时的密码

15.设置局域网ip均能访问

 

//进入mysql库里面
use mysql
//设置局域网ip均能访问
update user set user.Host='%' where user.User='root';

16.执行生效指令

flush privileges;

17.实现远程连接

可以在mysql里执行这个sql语句,查看一下用户信息

 SELECT User, Host FROM mysql.user;

如果Host是‘%’。那就说明可以在任何主机上进行连接,而下面的localhost就表示只能在本地登录。

所以我这里就可以实现远程通过root和密码(上面的123456)进行连接,端口一般是默认的3306。

18.远程连接问题

(1)防火墙问题

如果发现远程连接不上可能是防火墙问题,我们可以通过下面命令查看一下防火墙都放行了哪些端口(我们要退出mysql,但不是退出mysql服务,我用的是‘ctrl+z’很便捷)

firewall-cmd --list-ports

显然,我这里是已经放行了的,如果没有放行就需要如下命令放行

//放行3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent

//重启防火墙
systemctl restart firewalld

放行以后一定要重启防火墙,否则不生效。

(2)mysql服务未启动

可能mysql服务因为某些原因没有处于运行状态,所以可以查看一下mysql服务的运行情况,可以用如下命令:

systemctl status mysqld

最主要的就是查看光标处是否是active状态,如果不是就是没运行起来。

19.安装tar

我这里分享我的网盘
https://pan.baidu.com/s/12DOjyw7zbjS8Bdwrw4HI3Q?pwd=qajb

里面Desktop中有tar文件夹,同样的通过ftp工具上传到linux主机上。

在移入的目录下,执行如下命令,哪个目录都是可以的

//创建一个tar目录
mkdir tar
//进去
cd tar
//前提:要求上传的那些包都放在这个目录下面

//下载本地库
yum install ./* 或者rpm -Uvh *.rpm --nodeps --force


如下是通过yum下载的展示图,因为我已经下载好了,所以我现在只删除了tar的rpm做的演示,其他的我没有删除,所以这里只显示了tar的install信息,但是大家还是需要把tar文件夹下所有rpm都上传到linux主机上,install后这里输入‘y’即可。

其中光标处不能是OS,否则就不是下载的本地的了。

 

 

Logo

鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。

更多推荐