Linux 下安装 mysql8
1.下载mysql
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.13-linux-glibc2.12-x86_64.tar
2.解压mysql包
tar -xvf mysql-8.0.13-linux-glibc2.12-x86_64.tar
再解压
tar xvJf mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz
修改名称
mv mysql-8.0.13-linux-glibc2.12-x86_64 mysql
3.安装mysql
3.1 增加mysql用户
创建mysql用户组:groupadd mysql
创建mysql用户:useradd -g mysql mysql
设置密码:passwd mysql
3.2添加默认配置文件
vim/etc/my.cnf
在my.cnf添加
[client]
port=3306
socket=/tmp/mysql/mysql.sock
[mysqld]
port=3306
user=mysql
socket=/tmp/mysql/mysql.sock
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
log-error=error.log
3.3 初始化mysql
/usr/local/mysql/bin/mysqld –initialize –user=mysql –basedir=/usr/local/mysql/ –datadir=/usr/local/mysql/data/
可能遇到错误:
提示没有权限/tmp/mysql,解决方案,执行命令:chown -R mysql:mysql /tmp/mysql
提示error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory,解决方案,安装libaio 即可yum install -y libaio
如果无异常情况日志如下可以看到mysql默认会生成root账号和密码
3.4 启动mysql服务器
./support-files/mysql.server start
4.创建myslq用户
创建用户:create user \’jack\’@\’localhost\’ identified by \’jack\’;
授予权限:grant replication slave on *.* to \’jack\’@\’localhost\’;
刷新:flush privileges;
5.mysql忘记密码重置
免密码登陆,vim /etc/my.cnf,在【mysqld】模块添加:skip-grant-tables
重启mysql服务: service mysqld restart
登陆mysql,mysql -u root -p //提示输入密码时直接敲回车
选择mysql数据库,use mysql
将root密码置空,update user set authentication_string = \’\’ where user = \’root\’;
去重my.cnf中的skip-grant-tables并重启mysql服务
登陆mysql选择数据库修改密码,ALTER USER \’root\’@\’localhost\’ IDENTIFIED BY \’password\’;(注意,这里mysql默认加密用的sha,navicat连接会提示authentication plugin \’caching_sha2_password\’,可使用ALTER USER \’root\’@\’localhost\’ IDENTIFIED WITH mysql_native_password BY \’password\’;
是mysql配置立即生效flush privileges;
6.其它问题
6.1 linux下执行mysql 命令提示unknown
原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。
ln -s /usr/local/mysql/bin/mysql /usr/bin
6.2 设置远程登陆
登陆mysql(mysql -u root -p),使用mysql数据库(use mysql),并执行:update user set host = \’%\’ where user = \’root\’;最后执行flush privileges;
6.3建立mysql服务
cp -a ./support-files/mysql.server /etc/init.d/mysqld
chkconfig –add mysqld
chkconfig –list mysqld(检查服务是否生效)
6.4配置全局环境变量
vi /etc/profile
在 profile 文件底部添加如下两行配置
PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH