centos mysql 安装

centos安装mysql5.7
安装包下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
下载安装包:wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
解压:tar -zxvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
移动重命名:mv mysql-5.7.36-linux-glibc2.12-x86_64 /usr/local/mysql
创建mysql权限组和用户并修改权限:

groupadd mysql
useradd -r -g mysql mysql

创建数据目录并赋予权限

mkdir -p /data/mysql  --创建目录
chown mysql:mysql -R /data/mysql  --赋予权限

配置my.cnf,vim /etc/my.cnf内容如下

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

进入mysql的bin目录

cd /usr/local/mysql/bin/

初始化

./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

先将mysql.server放置到/etc/init.d/mysql中

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

启动mysql

service mysql start

Starting MySQL.                                            [  OK  ]
[root@iZ2zeet2qekjwtnn7rziqjZ bin]# ps -ef|grep mysql
polkitd  15325 15305  0  2020 ?        03:25:14 mysqld
root     19276     1  0 15:04 pts/0    00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysql --pid-file=/data/mysql/mysql.pid
mysql    19503 19276  1 15:04 pts/0    00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/data/mysql/mysql.err --pid-file=/data/mysql/mysql.pid --socket=/tmp/mysql.sock --port=3306
root     19538 18770  0 15:05 pts/0    00:00:00 grep --color=auto mysql

登录mysql

[root@iZ2zeet2qekjwtnn7rziqjZ bin]# ./mysql -u root -p
Enter password: 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

密码错误,登录不上,直接修改/etc/my.cnf,添加下面内容(当然我下载这个版本默认root密码为123456,到这已经完成安装,后面内容可以忽略)

skip-grant-tables=1 --无需权限登录

重启service mysql restart并登录

[root@iZ2zeet2qekjwtnn7rziqjZ bin]# ./mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.36 MySQL Community Server (GPL)

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

这次成功了,接下来就是设置密码:

mysql> use mysql
mysql> UPDATE user SET authentication_string=PASSWORD("123456") WHERE user='root';

然后把之前的配置skip-grant-tables=1去掉,重新启动mysql
设置外网访问权限:

mysql> update mysql.user set host='%' where user='root';
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement

提示要修改密码:

mysql> alter user 'root'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.01 sec)

修改完成后重新设置host

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

如果不希望每次都到bin目录下使用mysql命令则执行以下命令

ln -s  /usr/local/mysql/bin/mysql    /usr/bin
posted @   A-GREATE-USERNAME  阅读(55)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
点击右上角即可分享
微信分享提示