Linux安装MySQL8.0.16

1.下载安装包

https://www.mysql.com/
Linux安装MySQL8.0.16_第1张图片

Linux安装MySQL8.0.16_第2张图片

2.安装MySQL

将下载好的安装包上传到服务器, 然后解压
tar -xvf mysql-8.0.16-el7-x86_64.tar.gz
然后将解压目录重命名为mysql-8.0.16
mv mysql-8.0.16-el7-x86_64 mysql-8.0.16
在mysql下创建data 和logs 目录

       创建mysql用户组和mysql用户

        groupadd mysql

  groupadd mysql

  groupadd mysql /etc/mysql-8.0.16

更改mysql安装文件夹mysql-8.0.16/的权限

       chmod -R 755  /etc/mysql-8.0.16

      创建vi  my.cnf

[client]
socket=/aifs01/tools/mysql-8.0.16/data/mysql.sock
port = 3306
[mysqld]
basedir=/aifs01/tools/mysql-8.0.16/
datadir=/aifs01/tools/mysql-8.0.16/data
socket=/aifs01/tools/mysql-8.0.16/data/mysql.sock
port = 3306
innodb_buffer_pool_size = 3G
max_connections = 1000
wait_timeout = 600
interactive_timeout = 600
log_bin=/aifs01/tools/mysql-8.0.16/logs
pid-file=/aifs01/tools/mysql-8.0.16/data/mysql.pid
server-id=16
binlog_format=mixed
character_set_server=utf8
skip-name-resolve
autocommit = 1
sort_buffer_size = 32M
join_buffer_size = 128M
tmp_table_size = 72M
max_allowed_packet = 16M
read_buffer_size = 16M
read_rnd_buffer_size = 32M
lower_case_table_names = 1
#skip_networking
table_open_cache = 400
thread_cache_size=768
key_buffer_size=32M
read_buffer_size=8M
read_rnd_buffer_size=4M
back_log=1024
#flush_time=0
open_files_limit=65535
table_definition_cache=1400
log_queries_not_using_indexes = 1
log_slow_admin_statements = 1
log_slow_slave_statements = 1
log_throttle_queries_not_using_indexes = 10
expire_logs_days = 90
min_examined_row_limit = 100
innodb_log_file_size = 200M
innodb_log_files_in_group = 2
innodb_log_buffer_size = 16M
secure_file_priv=’’
[mysqld_safe]
log-error=/aifs01/tools/mysql-8.0.16/logs/mysql-error.log

   进入数据安装目录下初始化

./bin/mysqld --initialize --user=root --basedir=/etc/mysql-8.0.16 --datadir=/etc/mysql-8.0.16/data

(–user=root 这个用户看个人情况,最好是在普通用户下创建数据库,如果使用root前面就没必要新建用户了)

执行的时候报错:
在这里插入图片描述

解决方法:

yum install -y libaio  //安装后在初始化就OK了

Linux安装MySQL8.0.16_第3张图片

安装完后又报错

在这里插入图片描述
yum -y install numactl

 执行的时候报错	

  ./bin/mysqld: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./mysqld)   

  这个是动态库版本低,查看系统glibc支持的版本:

  strings /lib64/libc.so.6 |grep GLIBC_

GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_PRIVATE

 rpm -qa |grep glibc
 
 glibc-static-2.12-1.80.el6_3.6.x86_64

glibc-headers-2.12-1.80.el6_3.6.x86_64
glibc-common-2.12-1.80.el6_3.6.x86_64
glibc-devel-2.12-1.80.el6_3.6.x86_64
glibc-static-2.12-1.80.el6_3.6.i686
glibc-devel-2.12-1.80.el6_3.6.i686
glibc-2.12-1.80.el6_3.6.i686
glibc-2.12-1.80.el6_3.6.x86_64

具体解决方法查看https://blog.csdn.net/a1035082174/article/details/100552784

 然后重新执行初始化发现又报错

在这里插入图片描述

 ll /usr/lib64/libstdc++.so.6

在这里插入图片描述

 cp /home/libstdc++.so.6.0.19 /usr/lib64/

 rm -rf /usr/lib64/libstdc++.so.6

 ln -s /usr/lib64/libstdc++.so.6.0.19 /usr/lib64/libstdc++.so.6

 strings /usr/lib/libstdc++.so.6 | grep GLIBCXX

在这里插入图片描述

出现这个不影响 可以直接去安装数据库了  (hodfb%nwI99b为root的初始密码)

./mysqld --initialize --user=root --basedir=/etc/mysql-8.0.16 --datadir=/etc/mysql-8.0.16/data

在这里插入图片描述

添加系统路径

 vim /etc/profile

export PATH=/etc/mysql-8.0.16/bin:$PATH

Linux安装MySQL8.0.16_第4张图片

 source /etc/profile

开机自启

 cd  /etc/mysql-8.0.16/support-files

 cp mysql.server /etc/init.d/mysqld    

 chkconfig --add mysqld

修改启动脚本

 vi  /etc/init.d/mysqld

修改里面的datadir=   basedir=  为你mysql的实际的部署目录具体查看你的mysql的配置文件

在这里插入图片描述

查看初始密码

 初始化成功执行后关注最后一点:root@localhost: 这里就是初始密码

在这里插入图片描述

 启动数据库

 service mysqld start

在这里插入图片描述

出现这个错误查看日志

在这里插入图片描述

 这个是设置表名不区分大小写的,但是如果注掉以后在要设置的时候MySQL8.0是无法重新设置的。此时建议把datadir配置目录下的内容全部删除,重新初始化

在这里插入图片描述

 进入命令行

  mysql -uroot –p

输入你查看的初始密码进入

在这里插入图片描述

出现这个以后在配置文件my.cnf中添加default_authentication_plugin = mysql_native_password 

然后删除datadir配置目录下的内容,重新初始化数据库‘

Linux安装MySQL8.0.16_第5张图片

 ./mysqld --initialize --user=mysql --basedir=/etc/mysql-8.0.16 --datadir=/etc/mysql-8.0.16/data 

在这里插入图片描述

Linux安装MySQL8.0.16_第6张图片

终于可以正常登录了,进来以后先修改root的密码

ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘root@2019’;

  create database tacs_user default character set utf8; 创建数据库

  CREATE USER 'user'@'%' IDENTIFIED BY 'user123'; 创建用户

  使用navicat登录MySQL发现报错

Linux安装MySQL8.0.16_第7张图片

没有开启远程连接,先创建远程连接

      use mysql;

      select host,user,authentication_string, plugin from user;

修改加密方式

update user set plugin=‘mysql_native_password’ where user=‘root’;

      修改连接权限

update user set host=’%’ ,authentication_string="" where user=‘root’; 此处密码置为空

重启数据库

service mysqld restart

Linux安装MySQL8.0.16_第8张图片

修改密码

ALTER USER ‘root’@’%’ IDENTIFIED BY ‘root@2019’;

授权远程连接

grant all on *.* to 'root'@'%'with grant option;

刷新权限

flush privileges;

撤销权限

revoke all privileges on . from ‘monitor’@’%’;

flush privileges;

Linux安装MySQL8.0.16_第9张图片

升级glibc库后,使用xshell登录linux,提示:

在这里插入图片描述

执行locale命令,提示如下异常,说明说明没安装en_US的local
Linux安装MySQL8.0.16_第10张图片

解决方案,修改如下:

     vi /etc/sysconfig/i18n

      # 添加下面的
      LC_ALL=C
      export LC_ALL

Linux安装MySQL8.0.16_第11张图片

     再执行下面的语句,使之生效

      source /etc/sysconfig/i18n

Linux安装MySQL8.0.16_第12张图片

你可能感兴趣的:(Linux,MySQL8.0.16)