卸载mysql https://blog.csdn.net/u011262200/article/details/81049725
https://blog.csdn.net/u013246891/article/details/81942775
service mysqld start stop restart
mkdir soft
5 ls
6 ping www.baidu.com
7 ipaddr
8 ip addr
9 ls
10 yum install gcc gcc-c++ openssl openssl-devel libaio libaio-devel ncurses ncurses-deve
11 yum -y install numactl
12 wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.18-linux-glibc2.12-x86_64.tar.xz
或者https://cdn.mysql.com/Downloads/MySQL-5.7/mysql-boost-5.7.31.tar.gz
13 yum -y install wget
14 wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz
15 ls
16 mv mysql-8.0.16-linux-glibc2.12-x86_64.tar /soft/
17 cd /soft/
18 ls
19 tar -zxvf mysql-8.0.16-linux-glibc2.12-x86_64.tar
20 tar -vxf mysql-8.0.16-linux-glibc2.12-x86_64.tar
21 ls
22 ll
23 tar -xvf mysql-8.0.16-linux-glibc2.12-x86_64.tar
24 tar -zxvf mysql-8.0.16-linux-glibc2.12-x86_64.tar
25 tar xvJf mysql-8.0.16-linux-glibc2.12-x86_64.tar
26 tar xvJf mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz
27 ls
28 ll
29 mkdir /usr/local/mysql8
30 cp -r mysql-8.0.16-linux-glibc2.12-x86_64/* /usr/local/mysql8/
31 cd /usr/local/mysql8/
32 mkdir data
33 mkdit log
34 mkdir log
35 /usr/local/mysql8/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql8 --datadir=/usr/local/mysql8/data
36 useradd mysql
37 chown -R mysql:mysql /usr/local/mysql8
38 /usr/local/mysql8/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql8 --datadir=/usr/local/mysql8/data
39 echo "export PATH=$PATH:/usr/local/mysql8/bin" >> /etc/profile
40 source /etc/profile
41 vi /etc/my.cnf
42 cp /usr/local/mysql8/support-files/mysql.server /etc/init.d/mysqld
43 vi /etc/init.d/mysqld
44 /etc/init.d/mysqld start
45 vi /etc/my.cnf
46 /etc/init.d/mysqld start
47 mysql -u root -p
48 skip-grant-tables
49 vi /etc/my.cnf
50 /etc/init.d/mysqld restart
51 mysql -u root -p
52 /etc/init.d/mysqld restart
53 systemctl status firewalld
54 systemctl stop firewalld
centos7.4下二进制方式安装mysql8.0 推荐使用
2018年08月16日 19:47:34 比不揪 阅读数 978
版权声明:未经作者同意不得转载 https://blog.csdn.net/u013246891/article/details/81747639
使用root账号安装
一、预安装环境
yum install gcc gcc-c++ openssl openssl-devel libaio libaio-devel ncurses ncurses-deve
yum -y install numactl
- 1
- 2
二、准备mysql相关安装文件、环境
下载
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz
或者https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
- 1
解压
tar -zxvf mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz
- 1
建立mysql的安装目录
mkdir /usr/local/mysql8
- 1
把相关文件复制过去
cp -r mysql-8.0.11-linux-glibc2.12-x86_64/* /usr/local/mysql8/
cd /usr/local/mysql8
- 1
- 2
建立数据和错误日志的目录
mkdir data
mkdir log
- 1
- 2
初始化数据库目录
/usr/local/mysql8/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql8 --datadir=/usr/local/mysql8/data
- 1
添加环境目录
echo "export PATH=$PATH:/usr/local/mysql8/bin" >> /etc/profile
source /etc/profile
- 1
- 2
三、配置文件和启动脚本
制作配置文件
vi /etc/my.cnf
[mysqld]
port=3306
datadir=/usr/local/mysql8/data
log-error=/usr/local/mysql8/log/mysql-err.log
user=root
skip-grant-tables #此项是为了装好后免登陆修改密码使用
default_authentication_plugin=mysql_native_password
[client]
socket=/tmp/mysql.sock
制作启动脚本
复制一个过去
cp /usr/local/mysql8/support-files/mysql.server /etc/init.d/mysqld
vi /etc/init.d/mysqld
- 1
- 2
编辑mysqld文件,找到这两个配置项,改成当前配置
basedir=/usr/local/mysql8
datadir=/usr/local/mysql8/data
- 1
- 2
启动、关闭、重启mysql的命令
/etc/init.d/mysqld start
/etc/init.d/mysqld stop
/etc/init.d/mysqld restart
- 1
- 2
- 3
四、重置密码
mysql -u root -p
- 1
到输入密码的时候直接回车
use mysql
- 1
先清空root的密码
mysql>update user set authentication_string = '' where user = 'root';
quit
- 1
- 2
删掉my.cnf里的句
skip-grant-tables
- 1
重启mysql
/etc/init.d/mysqld restart
- 1
然后再进去,还是到输入密码的时候直接回车,已经将密码置空了
mysql -u root -p
如果进不去提示 -bash: mysql: command not found
加软链接
ln -s /usr/local/mysql8/bin/mysql /usr/bin
ln -s /usr/local/mysql8/bin/mysqldump /usr/bin
修改密码,这里注意一下,密码强度是有要求的,这也是MYSQL8的特性
mysql>ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
mysql>use mysql;
- 1
- 2
修改登录IP限制,不修改就只能本地登录
mysql>update user set host = '%' where user = 'root';
- 1
重新刷新一下,因为有的时候用远程工具连接会有问题
mysql>ALTER USER 'root'@'%' IDENTIFIED BY 'MyNewPass4!' PASSWORD EXPIRE NEVER;
mysql>ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'MyNewPass4!';
- 1
- 2
好了,用数据库的远程工具连接上可以用了
中间注意解压和mysql用户组
1)、创建mysql用户
useradd mysql
2)、mysql目录改为mysql读写权限
chown -R mysql:mysql /var/lib/mysql
chown -R mysql:mysql /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql5.7
chown -R mysql:mysql /var/log/mariadb
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
port=3306
datadir=/usr/local/mysql5.7/data
socket=/tmp/mysql.sock
user=root
skip-grant-tables #此项是为了装好后免登陆修改密码使用
default_authentication_plugin=mysql_native_password
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
[mysqld_safe]
#这个要新建目录var/log/mariadb 加权限 chown -R mysql:mysql /var/log/mariadb
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
这个要新建目录var/log/mariadb 加权限 chown -R mysql:mysql /var/log/mariadb
[mysqld]
server-id = 1203306
# 最小400,对内存占用影响大
# 开发模式:从1400设置为400,内存从150M降到90M
# 服务模式:从1400设置为400,内存从324M降到227M
table_definition_cache=400
# 影响不大
# 从 2000 调至 500,占用内存减少了 1M
table_open_cache=500
# 影响不大
# 从 默认值 调至 400,占用内存减少了 1M
performance_schema_max_table_instances=400
#*********** GTID settting*******************
log_slave_updates = 1
gtid_mode=ON
enforce-gtid-consistency=true
innodb_flush_log_at_trx_commit=2
binlog_format= row
skip-slave-start=1
sync_binlog=5
#*********** Logs related settings ***********
log-bin = /usr/local/mysql8/3306/binlog/mysql-bin
log_bin_trust_function_creators=1
binlog_cache_size=32m
max_binlog_cache_size=64m
max_binlog_size=512m
long_query_time = 1
log_output = FILE
log-error = /usr/local/mysql8/3306/mysql-error.log
slow_query_log = 1
slow_query_log_file = /usr/local/mysql8/3306/slow_statement.log
#log_queries_not_using_indexes
general_log = 0
general_log_file = /usr/local/mysql8/3306/general_statement.log
#expire-logs-days = 14
binlog_expire_logs_seconds = 1728000
relay-log = /usr/local/mysql8/3306/binlog/relay-bin
relay-log-index = /usr/local/mysql8/3306/binlog/relay-bin.index
port=3306
datadir=/usr/local/mysql8/data
log-error=/usr/local/mysql8/log/mysql-err.log
user=root
innodb_buffer_pool_size=50M
#skip-grant-tables #此项是为了装好后免登陆修改密码使用
default_authentication_plugin=mysql_native_password
[client]
socket=/tmp/mysql.sock
操作记录
rm -rf mysql8/
168 mkdir /usr/local/mysql8
169 cp -r /home/softpackage/mysql-8.0.23-linux-glibc2.12-x86_64/* /usr/local/mysql8/
170 cd /usr/local/mysql8/
171 ll
172 mkdir data
173 mkdir log
174 /usr/local/mysql8/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql8 --datadir=/usr/local/mysql8/data
175 rm -rf /etc/my.cnf
176 /usr/local/mysql8/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql8 --datadir=/usr/local/mysql8/data
177 vi /etc/my.cnf
178 cd /etc/init.d/ll
179 cd /etc/init.d/
180 ll
181 cp /usr/local/mysql8/support-files/mysql.server /etc/init.d/mysqld
182 vi /etc/init.d/mysqld
183 chown -R mysql:mysql /usr/local/mysql8/
184 /etc/init.d/mysqld start
185 vi /etc/my.cnf
186 cd /var/run/mariadb/
187 mkdir /var/run/mariadb/
188 chown -R mysql:mysql /var/log/mariadb
189 chown -R mysql:mysql /var/run/mariadb
190 mkdir /var/log/mariadb
191 chown -R mysql:mysql /var/run/mariadb
192 chown -R mysql:mysql /var/log/mariadb
193 /etc/init.d/mysqld start
194 vi /etc/my.cnf
195 /etc/init.d/mysqld start
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
character-set-client-handshake=FALSE
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
local-infile=0
innodb_buffer_pool_size=500M
table_definition_cache=1000
# 影响不大
# 从 2000 调至 500,占用内存减少了 1M
table_open_cache=1000
# 影响不大
# 从 默认值 调至 400,占用内存减少了 1M
performance_schema_max_table_instances=500
port=3306
datadir=/usr/local/mysql8/data
socket=/tmp/mysql.sock
user=root
skip-grant-tables #此项是为了装好后免登陆修改密码使用
default_authentication_plugin=mysql_native_password
symbolic-links=0
skip-log-bin #关闭binlog
[mysqld_safe]
#这个要新建目录var/log/mariadb 加权限 chown -R mysql:mysql /var/log/innerdb
log-error=/var/log/innerdb/innerdb.log
pid-file=/var/run/innerdb/innerdb.pid
#
# include all files from the config directory
#
#!includedir /etc/my.cnf.d