1.官网下载mysql二进制文件:
https://dev.mysql.com/downloads/mysql/
mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz
2. cd /usr/local
3..解压缩tar文件
tar -xvf mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz
2.mv mysql-8.0.16-linux-glibc2.12-x86_64 mysql
3 添加系统的mysql组和mysql用户
groupadd mysql和useradd -r -g mysql mysql
4.初始化mysql配置表:
cd /usr/local/mysql //转到mysql目录下
chown -R mysql:mysql ./ //修改当前目录为mysql用户
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data //初始化数据库
这个命令和mysql5.7之前的命令不一样了,之前命令是:bin/mysql_install_db --user=mysql,但是之后的版本已经被mysqld --initialize替代
再次执行之后成功后出现如下的提示:
2019-07-15T20:04:57.994629Z 0 [System] [MY-013169] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.16) initializing of server in progress as process 31088
2019-07-15T20:04:57.994629Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: FMj8p#m1ZmQC
2019-07-15T20:04:57.994629Z 0 [System] [MY-013170] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.16) initializing of server has completed
【注意】:
mysql5.7版本之上会初始化话一个密码,在这里要记住这个初始化密码,在下面初次登录会用上。
chown -R root:root ./ //修改当前用户为root用户
chown -R mysql:mysql data //修改当前的data目录为mysql用户
5.复制配置文件:
[root@admin mysql]# cp support-files/my-default.cnf /etc/my.cnf
【注意】:如果没有my-default.cnf就手动创建一个文件,并且配置权限
mkdir my-default.cnf
chmod 777 ./my-default.cnf
2.重新执行上面的文件,然后修改/etc/my.cnf文件:
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
socket = /usr/local/mysql/tmp/mysql.sock
[client]
default-character-set=utf8
socket= /usr/local/mysql/tmp/mysql.sock
[mysql]
default-character-set=utf8
socket= /usr/local/mysql/tmp/mysql.sock
【注意】:如果/usr/local/mysql/目录下没有tmp文件,手动创建,并且配置权限:
mkdir tmp
chmod 777 ./tmp
【注意】 support-files/mysql.server 这个文件就是可以执行的 start stop restart
3.加入开机自启项:
1.将{mysql}/ support-files/mysql.server 拷贝为/etc/init.d/mysql并设置运行权限,这样就可以使用service mysql命令启动/停止服务
#cp mysql.server /etc/init.d/mysql
#chmod +x /etc/init.d/mysql
2.注册启动服务:
#chkconfig --add mysql
3.查看是否添加成功
[root@admin mysql]# chkconfig --list mysql
mysql 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
4.开启mysql服务:
service mysql start
配置环境变量
vi /etc/profile
文件中写入:
export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib
保存退出之后,让文件生效source /etc/profile
登录并修改密码
mysql -uroot -pFMj8p#m1ZmQC //后面是系统生成的密码
修改root密码
alter user 'root'@'localhost' identified by '654321';
flush privileges;
navcat远程连接mysql数据库:
mysql -u root -p
mysql->use mysql;
mysql->select 'host' from user where user='root';
mysql->update user set host = '%' where user ='root';
mysql->flush privileges;
mysql->select 'host' from user where user='root';
第一句是以权限用户root登录
第二句:选择mysql库
第三句:查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)
第四句:修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址
第五句:刷新MySQL的系统权限相关表
第六句:再重新查看user表时,有修改
Navicat连接MySQL8.0版本时 报错10060 端口未开放
windows打开telnet客户端 ,然后进行查看端口通不通
liunx执行此命令即可解决:service iptables stop (关闭防火墙)
此时使用navicat连接mysql即可成功。