当前位置:   article > 正文

centos7的linux系统中安装mysql数据库详细步骤图文,linux配置mysql数据库开机自启动,linux配置mysql数据库远程访问,linux系统中修改mysql密码_在mysql bin 目录中怎么启动mysql centos

在mysql bin 目录中怎么启动mysql centos


一、准备工作

查看系统中是否有mysql相关的东西。

1、用 rpm -qa 命令查看:

rpm -qa | grep mysql
rpm -qa | grep mariadb
  • 1
  • 2

如果存在则进行步骤2删除。

2、用 rpm -e 命令删除:

删除命令:

rpm -e --nodeps $(rpm -qa | grep mariadb)
  • 1

删除后再次查看:

rpm -qa | grep mariadb
  • 1

我这里系统中只有mariadb相关,只做了这个删除。

在这里插入图片描述

本次把mysql安装在 **/home** 文件夹

二、下载mysql并安装

1、下载

1.进入文件夹:

命令:

cd /home/
  • 1

2.拉取压缩包:

命令:

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
  • 1

注意:压缩包也可以通过百度网盘下载,自己上传到 /home文件夹下:

百度网盘压缩包点我进行下载

下载:
在这里插入图片描述

下载完成查看:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TCPU2b1M-1667801041726)(C:\Users\86182\AppData\Roaming\Typora\typora-user-images\image-20221014143412160.png)]

2、解压

1、解压命令:

tar -xvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz 
  • 1

2、解压后重命名文件夹:

mv mysql-5.7.24-linux-glibc2.12-x86_64 mysql
  • 1

在这里插入图片描述

3、进入文件夹,完善目录结构

1、进入mysql目录,新建data文件夹。

1、进入目录
cd mysql
  • 1
2、新建数据文件夹
mkdir data
  • 1

在这里插入图片描述

4、创建用户和组并授权

1、创建用户和组命令:

groupadd mysql

useradd -r -g mysql -s /bin/false mysql

id mysql
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

2、授权

我们mysql安装在 /home下,data数据也在该目录下,只需授权**/home/mysql**目录即可。

命令:

chown -R mysql:mysql /home/mysql
  • 1

在这里插入图片描述

5、配置环境变量

编辑配置文件命令:

cat <<EOF>> /root/.bash_profile
  • 1

然后输入:

export PATH=\$PATH:/home/mysql/bin
  • 1

回车。

输入:

EOF
  • 1

回车。

刷新配置文件:

source /root/.bash_profile 
  • 1

查看配置文件:

cat /root/.bash_profile 
  • 1

在这里插入图片描述

6、安装依赖包

需要安装一下依赖包,不然可能会导致mysql安装失败。

yum -y install autoconf
  • 1

7、新建mysql的配置文件。

1、新建文件:

touch  /etc/my.cnf
  • 1

2、填充内容

/etc/my.cnf 文件的内容:


[mysqld]
user=mysql
port=3306
basedir=/home/mysql
datadir=/home/mysql/data
socket=/tmp/mysql.sock
log-error=/home/mysql/data/mysql.log
pid-file=/home/mysql/data/mysql.pid
slow_query_log=on
long_query_time=8
#如果运行的sQL语句没有使用索引,则mysql数据库同样会将这条sQL语句记录到慢查询日志文件中。
log-queries-not-using-indexes
default_storage_engine=InnoDB
innodb_file_per_table = on
#忽略主机名解析,提高访问速度(注意配置文件中使用主机名将不能解析)
skip_name_resolve = on
character-set-server=utf8mb4
query_cache_type=1
query_cache_limit = 2M
query_cache_size = 128M
max_connections = 1000
skip_grant_tables 登录时跳过安全检查
##客户端
[mysql]
socket=/tmp/mysql.sock
default-character-set=utf8mb4
[client]
port=3306
socket=/tmp/mysql.sock
default-character-set=utf8mb4
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • user:刚刚新建的mysql管理用户。
  • basedir:指定 MySQL 安装的绝对路径;
  • datadir:指定 MySQL 数据存放的绝对路径;
  • port:服务端口号,默认为 3306
  • server-id:MySQL 服务的唯一编号,每个 MySQL 服务的 id 需唯一。
  • socket:socket 文件所在目录
  • skip_grant_tables 登录时跳过安全检查

3、填充内容后查看:

 cat  /etc/my.cnf
  • 1

在这里插入图片描述

7、初始化mysql

1、进入bin目录:

cd /home/mysql/bin
  • 1

2、执行命令初始化:


mysql_install_db --user=mysql --basedir=/home/mysql/ --datadir=/home/mysql/data/

mysqld -initialize --user=mysql --basedir=/home/mysql/ --datadir=/home/mysql/data/

  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

8、启动mysql服务

1、进入support-files目录:

cd /home/mysql/support-files/
  • 1

2、启动mysql服务:

./mysql.server start
  • 1

如果出现异常:

[root@localhost support-files]# ./mysql.server start
./mysql.server:行239: my_print_defaults: 未找到命令
./mysql.server: 第 259 行:cd: /usr/local/mysql: 没有那个文件或目录
Starting MySQL ERROR! Couldn't find MySQL server (/usr/local/mysql/bin/mysqld_safe)
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述
处理方式修改 mysql.server 文件:

 vi mysql.server
  • 1

把文件中的默认路径 /usr/local 修改为我们的安装路径 /home

修改前:
在这里插入图片描述
修改后:
在这里插入图片描述
再次重启数据库:

在这里插入图片描述

3、连接进入数据库:

 mysql -u -root
  • 1

三、配置开机自启动

1、配置自启动。

执行 命令(在任何目录下都可执行该命令)把我们的mysql启动脚本复制一份:

cp /home/mysql/support-files/mysql.server /etc/init.d/mysql

chkconfig mysql on
  • 1
  • 2
  • 3

查看mysql是否加入开机启动列表:

chkconfig --list | grep mysql 
  • 1

在这里插入图片描述

配置完之后就可以用 service mysql start 启动 MySQL 服务!

2、启动命令。

启动服务:

service mysql start
  • 1

重启服务:

service mysql restart 
  • 1

关闭服务:

service mysql stop
  • 1

四、开放mysql远程连接

1、启动mysql服务并进入。

 mysql -u root -p
  • 1

回车后输入密码,回车进入数据库。
我们暂时使用跳过密码模式,无需数据密码回车就能进入数据库。
下面会把该模式关闭。

2、切换库,设置,刷新。

use mysql;

update user set user.Host='%' where user.User='root';

flush privileges;
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

3、重启服务

service mysql restart 

  • 1
  • 2

4、开放防火墙端口

1、开放 3306 端口:

firewall-cmd --zone=public --add-port=3306/tcp --permanent
  • 1

2、重启防火墙:

firewall-cmd --reload
  • 1

3、查询端口号80 是否开启:

firewall-cmd --query-port=3306/tcp
  • 1

在这里插入图片描述

五、修改密码

1、启动mysql服务并进入。

确定一下 /etc/my.cnf 文件有 skip-grant-tables 且没有被注释掉。
在这里插入图片描述
如果修改了该文件,则需要重启mysql服务。

我们这里无需重启直接进入mysql:

 mysql -u root 
  • 1

2、切换库,设置,刷新。

use mysql;

update mysql.user set authentication_string=password('123456') where user='root';

flush privileges;

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

3、编辑 /etc/my.cnf 注释掉 skip-grant-tables

4、重启mysql服务。

service mysql restart
  • 1

5、登录mysql测试。

6、远程连接异常处理。

如果远程连接报错:
在这里插入图片描述
处理方式:
进入mysql,修改密码,持久化设置。

 mysql -u root -p
  • 1

输入密码,之前设置的123456
回车进入数据库。
在数据库操作设置密码,设置持久化,刷新。

set password=password('123456'); 

alter user 'root'@'%' password expire never;

flush privileges;
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

坑了不少踩,整理一个文档。

亲测有效,完全按照步骤操作。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小惠珠哦/article/detail/981919
推荐阅读
相关标签
  

闽ICP备14008679号