1.检查下.1的位置
[root@tdx ]# whereis .1
: /usr/lib64/.1
如果没有找到该文件
(1).在线安装
[root@tdx ]# yum install -y libaio
(2).离线安装:
上传之后执行命令安装:
[root@tdx /]# rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm
2.清空系统中的原有mariadb的配置文件(/etc/)
[root@tdx /]# rm -rf /etc/
3.准备mysql安装包
(1).切换目录
[root@tdx /]# cd /tdx/
(2).上传文件到此目录
mysql8.0.16-linux-glibc2.12-x86_64.
(3).解压
[root@tdx /]# tar -zxvf mysql8.0.33-linux-glibc2.12-x86_64.
(4).重命名
[root@tdx /]# mv mysql8.0.33-linux-glibc2.12-x86_64 mysql8.0.33
(5).切换目录
[root@tdx /]# cd mysql8.0.33
(6).新建目录
[root@mysql8.0.33 /]# mkdir data
[root@mysql8.0.33 /]# mkdir log
[root@mysql8.0.33 /]# mkdir pid
[root@mysql8.0.33 /]# mkdir tmp
(7).新建配置文件
[root@mysql8.0.33 /]# touch
修改配置文件增加内容
[root@mysql8.0.33 /]# vi
增加内容
[mysqld]
port = 3306
basedir =/tdx/mysql8.0.33
datadir = /tdx/mysql8.0.33/data
log-error = /tdx/mysql8.0.33/log/
pid-file = /tdx/mysql8.0.33/pid/
socket = /tdx/mysql8.0.33/tmp/
character-set-server=utf8
default-storage-engine=Innodb
max_connections=500
lower_case_table_names = 1
interactive_timeout=288000
wait_timeout=288000
net_read_timeout=900
net_write_timeout=900
max_allowed_packet=1073741824
log_bin_trust_function_creators=1
innodb_flush_log_at_trx_commit = 2
sync_binlog = 2000
key_buffer_size=8G
read_buffer_size=64K
sort_buffer_size=256K
myisam_max_sort_file_size=100G
innodb_buffer_pool_size=10G
innodb-buffer-pool-instances=8
innodb_read_io_threads=8
innodb_write_io_threads=8
innodb-file-per-table=true
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
4.创建新用户并授权
[root@tdx /]# adduser mysql
[root@tdx /]# chown -R mysql:mysql /tdx/mysql8.0.33
5.初始化数据库(可以实现数据库的初始化,而且会产生一个随机密码)
[root@mysql8.0.33 /]# bin/mysqld --initialize --user=mysql --basedir=/tdx/mysql8.0.33 --lower_case_table_names=1
选项说明:
–initialize 初始化(真正开始干活)
–user=mysql 以mysql用户的身份初始化数据库,产生文件都是mysql作为拥有者
–basedir=xxx mysql其安装目录,非常重要
–lower_case_table_names=1 不区分大小写,初始化不指定,必须重装才能解决,非常重要
6.启动MySQL数据库
[root@mysql8.0.33 /]# cp support-files/ /etc//mysql
注意:默认情况下,GBLIC版本的数据库要求安装到/usr/local/mysql目录,其脚本中对应的目录也是/usr/local/mysql,这会导致mysql无法启动。所以可以更改其basedir以及datadir两个变量
[root@mysql8.0.33 /]# vim /etc//mysql
46行 basedir=/tdx/mysql8.0.33
47行 datadir=/tdx/mysql8.0.33/data
7.启动MySQL数据库(不能使用systemctl,只能使用service)
[root@mysql8.0.33]# service mysql start
如果出现以下错误
error: log-error set to ‘/tdx/mysql8.0.33/log/’, however file don’t exists. Create writable for user ‘mysql’.
ERROR! The server quit without updating PID file (/tdx/mysql8.0.33/pid/).
[root@mysql8.0.33]# touch /tdx/mysql8.0.33/log/
[root@mysql8.0.33]# chown -R mysql:mysql /tdx/mysql8.0.33/log/
再次启动
8.登录数据库
[root@mysql8.0.33 /]# ./bin/mysql -uroot -p -S /tdx/mysql8.0.33/tmp/
9.修改root密码
mysql> alter user root@localhost identified by ‘123456’;
10.创建用户
mysql> create user test@‘%’;
mysql> alter user trest@‘%’ identified with mysql_native_password by ‘123456’;
mysql> grant all privileges on . to ‘test’@‘%’;
mysql> flush privileges;
mysql> quit;
10.给mysql启动命令增加一个软连接,以便任意目录登录
[root@mysql8.0.33 /]# ln -s /tdx/mysql8.0.33/bin/mysql /usr/bin/
如果出现以下错误
ln: failed to create symbolic link ‘/usr/bin/mysql’: File exists
[root@mysql8.0.33 /]# ln -sf /tdx/mysql8.0.33/bin/mysql /usr/bin/
11.停止服务和启动服务【任意路径均可】
[root@ /]# service mysql stop
[root@ /]# service mysql start