linux安装mysql8.0.28教程

1.去官网下载最新版本(不想下载也可以私信我我发你)

linux安装mysql8.0.28教程_第1张图片
我这里用的版本是(mysql-8.0.28-linux-glibc2.12-x86_64.tar.xz)

2.可以上传到linux服务器

2.1解压
tar xvJf mysql-8.0.28-linux-glibc2.12-x86_64.tar.xz
2.2移动安装包到usr/local下面(这个时候安装包文件夹修改成了mysql)
mv mysql-8.0.11-linux-glibc2.12-x86_64  /usr/local/mysql
2.3可以删除tar包
rm -rf mysql-8.0.28-linux-glibc2.12-x86_64.tar.xz

3 同级目录创建数据存储文件夹

mkdir /usr/local/mysql/data

4.创建用户及用户组

#用户组
$ groupadd mysql
#用户 (用户名/密码)
$ useradd -g mysql mysql
#授权
$ chown -R mysql.mysql /usr/local/mysql/

5、初始化数据库

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

如果报错(bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file:)
可以先执行

yum install numactl

6、建立MySQL服务

$ cp -a ./support-files/mysql.server /etc/init.d/mysql # 若mysqld,以下mysql相应的修改mysqld
$ chmod +x /etc/init.d/mysql
$ chkconfig --add mysql
$ chkconfig --list mysql #检查服务是否生效

7.修改my.cnf文件

vim  /etc/my.cnf

8.配置信息如下:

[mysqld]
basedir = /usr/local/mysql   
datadir = /usr/local/mysql/data
socket = /usr/local/mysql/mysql.sock
character-set-server=utf8
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[client]
socket = /usr/local/mysql/mysql.sock
default-character-set=utf8

9、启动mysql服务

#启动
$ service mysql start; 
#查看启动状态 
$ service mysql status;

10.关闭网络防火墙

	systemctl stop firewalld	   关闭网络防火墙
	systemctl disable firewalld  关闭开启自启动(永久关闭)

11.这个时候需要去修改密码并授权指定ip登录或者所有ip都可以登录

12.建立链接

$ ln -s /usr/local/mysql/bin/mysql /usr/bin

13.client链接mysql(密码是一定要修改的)

	注意:5.7之前版本安装完成之后没有密码,mysql5.7之后的版本的初始密码是随机生成的,放在了 /var/log/mysqld.log
			使用命令 grep ‘temporary password’ /var/log/mysqld.log 读出来即可
$ mysql -u root
如果提示错误ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO),root账户没有设置密码,可以在安装账户下设置密码

#关闭服务
$ service mysql stop
#安全模式登录(需要cd 到 /usr/local/mysql/bin )
 ./mysqld_safe --skip-grant-tables
#需要打开新的终端,登录mysql
$ ./mysql -u root
#设置密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY'自己要设置的密码';

刷新权限

	flush privileges;

14.授权

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY'此处填写你的密码';
Query OK, 0 rows affected (0.08 sec)

关于14部 我看了很多帖子 我也不知道是不是我是8.0.28的问题 ,还是我的步骤有问题 我mysql执行此句 语法错误
所以我直接修改了root的权限

可以先到mysql库下面直接先修改

mysql -u root -pvmwaremysql>use mysql;
mysql>update user set host = '%' where user = 'root';

本来我们应该cp复制出一条root的数据修改为%任意ip 我们可以先直接修改,后续可以登录 用第三方插件navicat去mysql库的user表 复制新增一条恢复数据也可以的!

15 如果你用的腾讯云或者阿里云服务器 还需要去配置出入规则开放3306端口!!!!!!

你可能感兴趣的:(java,mysql,linux)