CentOS7 Mysql 安装5.7

1 下载官方Mysql 我这里使用的是 mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz 版本,下载地址

https://pan.baidu.com/s/1dB4S9dlyrEelFAmW2-sQYQ   提取码 encs

2  用文件上传工具把压缩包上传到自己的服务器,我自己是传到了  /usr/local/apps目录下

3 将压缩包复制到 /usr/local下面

拷贝压缩包
[root@localhost /]# cd /usr/local/apps/
[root@localhost apps]# cp mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz  ../
[root@localhost apps]# cd ..

解压
[root@localhost local]# tar -xvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz 

修改文件名
[root@localhost local]# mv mysql-5.7.26-linux-glibc2.12-x86_64 mysql

删除压缩包
[root@localhost local]# rm -rf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz 

4 创建存放的数据及日志的文件

mkdir -p /xx/yy/zz 递归创建

[root@localhost local]# cd mysql/
[root@localhost mysql]# 
[root@localhost mysql]# mkdir data      # 在/user/local/mysql 路径下创建用来存放数据的文件 
[root@localhost mysql]# mkdir log       # 在/user/local/mysql 路径下创建mysql的日志文件
[root@localhost mysql]# mkdir binlog    # binlog的日志存放目录

5 创建mysql用户组和用户并修改权限

[root@localhost mysql]# groupadd mysql
[root@localhost mysql]# 
[root@localhost mysql]# useradd -r -g mysql mysql
[root@localhost mysql]# 
[root@localhost mysql]# chown mysql:mysql -R /usr/local/mysql

6 在/etc 目录下 配置my.cnf

[root@localhost local]# cd /etc/

my.cnf配置如下

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/usr/local/mysql/log/mysql.err
pid-file=/usr/local/mysql/log/mysql.pid
#character config
character_set_server=utf8mb4 #有表情符号的utf-8
symbolic-links=0
explicit_defaults_for_timestamp=true


log-bin=/usr/local/mysql/binlog/mysql-bin

# 等同于下面三条三个参数来指定,
# log_bin=ON 第一个参数是打开binlog日志
# log_bin_basename=/var/lib/mysql/mysql-bin 第二个参数是binlog日志的基本文件名,后面会追加标识来表示每一个文件
# log_bin_index=/var/lib/mysql/mysql-bin.index 第三个参数指定的是binlog文件的索引文件,这个文件管理了所有的binlog文件的目录

# 注意5.7以及更高版本需要配置本项:(自定义,保证唯一性); 
server-id=123454 
#binlog格式,有3种statement,row,mixed  
binlog-format=ROW

7  初始化数据库 (会得到数据库的初始密码 首次登陆时需要用   tR#HdW::E4tz )

[root@localhost local]# cd /usr/local/mysql/bin/
[root@localhost bin]# 
[root@localhost bin]# ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql --initialize
[root@localhost bin]# 
[root@localhost bin]# 
[root@localhost bin]# cat /usr/local/mysql/log/mysql.err   # 查看初始密码
2020-09-14T06:21:44.556788Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2020-09-14T06:21:44.712057Z 0 [Warning] InnoDB: New log files created, LSN=45790
2020-09-14T06:21:44.740854Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2020-09-14T06:21:44.813600Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 8fc6af94-f652-11ea-8004-000c298268fd.
2020-09-14T06:21:44.815623Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2020-09-14T06:21:44.819875Z 1 [Note] A temporary password is generated for root@localhost: tR#HdW::E4tz

这里我得到的临时密码为   tR#HdW::E4tz

8 启动mysql数据库服务,修改root密码

[root@localhost init.d]# ll
总用量 52
-rw-r--r--. 1 root root 18281 8月  19 2019 functions
-rwxr-xr-x. 1 root root 10576 9月  14 14:26 mysql
-rwxr-xr-x. 1 root root  4569 8月  19 2019 netconsole
-rwxr-xr-x. 1 root root  7928 8月  19 2019 network
-rw-r--r--. 1 root root  1160 4月   1 09:30 README

1、将服务文件拷贝到init.d下,并重命名为mysqld(mysqld即为启动服务名字)
[root@localhost /]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2、赋予可执行权限
[root@localhost /]# chmod +x /etc/init.d/mysqld
3、添加服务
[root@localhost /]# chkconfig --add mysqld
4、显示服务列表
[root@localhost /]# chkconfig --list
5 添加软连接(软连接作用参考 https://www.jb51.net/article/34622.htm ),并重启mysql服务

# 第一条软连接好像没用 我自己没有设置
[root@localhost /]#  ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

 
[root@localhost /]#  ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql

6 启动mysql服务
[root@localhost /]#  service mysqld start #注意这里时mysqld 是上面添加的服务名字
Starting MySQL. SUCCESS! 


7 修改密码
[root@localhost init.d]# mysql -uroot -p
Enter password:      #密码为上面第7步得到的初始密码
初始化数据库


SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES; 

9 修改用户权限 可以远程访问连接

通过以下命令,进行远程访问的授权
use mysql                                            #访问mysql库
update user set host = '%' where user = 'root';      #使root能再任何host访问
FLUSH PRIVILEGES;    

开放远程端口

[root@localhost init.d]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
success
[root@localhost init.d]# firewall-cmd --reload
success
[root@localhost init.d]# 

 

mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> 
mysql> update user set host = '%' where user = 'root'; 
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> FLUSH PRIVILEGES; 
Query OK, 0 rows affected (0.00 sec)

mysql> 
mysql> 

10  测试连接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值