ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

liunx 服务器下面安装mysql8.0

2022-05-29 20:33:59  阅读:238  来源: 互联网

标签:8.0 log data mysql8.0 usr mysql 服务器 local liunx


闲来无事,准备自己搭建一个服务器高点事情,不可避免的就是需要使用到mysql数据库了。在Linux系统安装MySQL8.0,网上已经有很多的教程了,到自己安装的时候却发现各种各样的问题,现在把安装过程和遇到的问题都记录下来。

需要说明的一点是我使用的是ssh 工具连接的腾讯云linux系统的,它的用法和命令窗口差不多,一样的使用Linux命令操作。

废话不多说了,下面直接开干。

 

一、安装包及安装路径准备

1、切换目录到  /usr/local目录下,创建mysql文件夹。 

1 cd /use/loca
2 mkdir mysql

 

2、切换到mysql目录下,下载mysql8.0的安装包

1 cd mysql
2 wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz

注:如果下载安装包的时候网络不是很好,或者其他的原因下载失败,我们也可以在官网直接下载对应的liunx版本到我们的windows系统中,通过ftp工具上传到服务器的/usr/local/mysql目录下。

 

3、解压我们刚刚下载的mysql安装包,然后把解压后的文件目录名称修改成更加简洁的mysql8.0

1 tar xvJf mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz 
2 mv mysql-8.0.20-linux-glibc2.12-x86_64 mysql-8.0

 

4. 在/usr/local/mysql目录下面创建data目录,用来存储mysql的文件数据;创建一个文件用来存放mysql通用日志,

1 mkdir data
2 touch mysql.log

 

 二、创建liunx用户组及用户信息,用来启动mysql

1、分别创建用户组以及用户和密码

1 groupadd mysql
2 useradd -g mysql mysql

注:如果在创建时提示已存在,说明服务器目前是存在这个用户组或用户,可以直接跳过这一步。

 

2、对刚刚创建的用户进行授权

1 chown -R mysql.mysql /usr/local/mysql/mysql-8.0
2 chown -R mysql.mysql /usr/local/mysql/mysql.log
3 chmod 750 /usr/local/mysql/data -R

 

 

三 、配置mysql启动的环境

1、编辑/etc/profile文件,配置mysql的全局环境变量

1 vim /etc/profile

  打开文件后,在最后一行加上:

  export PATH=$PATH:/usr/local/mysql/mysql-8.0/bin:/usr/local/mysql/mysql-8.0/lib

  然后退出保存。

 

2、编辑mysql配置文件my.cnf内容

1 vim /etc/my.cnf

然后再文件内复制以下内容直接覆盖

[mysql]
default-character-set=utf8mb4
[client]
#port=3306
socket=/var/lib/mysql/mysql.sock

[mysqld]
#port=3306
#server-id=3306
user=mysql
general_log = 1
general_log_file= /usr/loacl/mysql/mysql.log
socket=/var/lib/mysql/mysql.sock
basedir=/usr/local/mysql/mysql-8.0
datadir=/usr/local/mysql/data
log-bin=/usr/local/mysql/data/mysql-bin
innodb_data_home_dir=/usr/local/mysql/data
innodb_log_group_home_dir=/usr/local/mysql/data/
character-set-server=utf8mb4
lower_case_table_names=1
autocommit=1
default_authentication_plugin=mysql_native_password
symbolic-links=0
# Disabling symbolic-links is recommended to prevent assorted security risks
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
log-error=/usr/local/mysql/data/mysql.log
pid-file=/usr/local/mysql/data/mysql.pid

#
# include all files from the config directory

注:做完前面全部的三大步骤,我们安装前的准备工作已经完成了,接下来就可以开始初始化基础信息(安装)了

 

四、mysql的初始化工作

1.把目录切换到mysql的bin目录下

cd /usr/local/mysql/mysql-8.0/bin

 

2.初始化基础信息,得到数据库的初始密码,并记录下密码。

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

 

3.复制 mysql.server 文件,在/usr/local/mysql/mysql-8.0目录下执行

1 cp -a ./support-files/mysql.server /etc/init.d/mysql 
2 cp -a ./support-files/mysql.server /etc/init.d/mysqld

 

4.赋予权限

1 chown 777 /etc/my.cnf
2 chmod +x /etc/init.d/mysql
3 chmod +x /etc/init.d/mysqld

 

5.检查一下/var/lib/mysql是否存在,否则进行创建,然后再赋予权限

1 mkdir /var/lib/mysql 
2 chown -R mysql:mysql /var/lib/mysql/ 

 

6.启动服务的工作就全部准备好了,现在我们切换mysql用户来启动mysql

1 service mysql start 

注:如果发现启动失败,可以先查看data里面的mysql.log,如果有提示3306这样的字样,第一个想到的应该是端口被占用,使用lsof -i:端口号,查看是哪个PID(进程号)占用了该端口,然后使用kill PID(进程号)杀掉进程,重新执行service mysql start。

 

五、mysql的启动工作已经完成,现在我们可以来登录mysql,修改root账号密码

1.修改数据库root账号的密码。

1 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
2 flush privileges;

 

2.设置可以远程访问(因为root默认是不能远程访问的)

1 use mysql;
2 update user set host='%' where user='root';
3 flush privileges;

 

最后就可以使用root账号去登录mysql了。如果有遇到问题的小伙伴评论留言,文中如有遗漏错误,欢迎指正。

QQ:503900746 

 

标签:8.0,log,data,mysql8.0,usr,mysql,服务器,local,liunx
来源: https://www.cnblogs.com/JackBu/p/16324595.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有