安装MySQL
2023年7月17日大约 3 分钟
MySQL是一个开源的关系型数据库管理系统,常用于Web应用程序的后端数据存储。它支持多种操作系统和编程语言,具有高性能、可靠性和可扩展性等特点。
安装MySQL8
Linux安装MySQL
参考:https://www.runoob.com/mysql/mysql-install.html
安装前说明
- 所有平台的 MySQL 下载地址为: MySQL 下载(opens new window)
- 挑选你需要的 MySQL Community Server 版本及对应的平台。
安装前,我们可以检测系统是否自带安装 MySQL
[root@iZ2ze4owq6ailug7vb38z5Z ~]# rpm -qa | grep mysql
[root@iZ2ze4owq6ailug7vb38z5Z ~]# yum list installed | grep mysql
如果你系统有安装,那可以选择进行卸载
[root@iZ2ze4owq6ailug7vb38z5Z ~]# rpm -e mysql # 普通删除模式
[root@iZ2ze4owq6ailug7vb38z5Z ~]# rpm -e --nodeps mysql # 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
[root@iZ2ze4owq6ailug7vb38z5Z ~]# yum erase mysql-* # yum删除所有mysql相关包
下载 Yum 资源包
#mysql8
wget https://mirrors.aliyun.com/mysql/MySQL-8.0/mysql-8.0.27-1.el7.x86_64.rpm-bundle.tar
tar -xvf mysql-8.0.27-1.el7.x86_64.rpm-bundle.tar
安装
# 这里要注意顺序,或者可以单独下载这几个文件,然后rpm安装
rpm -ivh mysql-community-common-8.0.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.27-1.el7.x86_64.rpm
- 获取域名资源包地址:http://repo.mysql.com/

- 服务管理
[root@iZ2ze4owq6ailug7vb38z5Z ~]# systemctl status mysqld
[root@iZ2ze4owq6ailug7vb38z5Z ~]# systemctl enable mysqld
- 过滤密码
grep password /var/log/mysqld.log

登录
mysql -uroot -p # 发现mysql 会报错 mysql: [Warning] Using a password on the command line interface can be insecure. ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
有可能是
my.cnf
配置文件中设置了[mysqld]
的参数socket
,而没有设置[client]
的参数socket
mysql.sock
文件有什么用:mysql
支持socket
和TCP/IP
连接。那么mysql.sock
这个文件有什么用呢?连接localhost
通常通过一个Unix
域套接字文件进行,一般是/tmp/mysql.sock
。如果套接字文件被删除了,本地客户就不能连接。/tmp
文件夹属于临时文件,随时可能被删除。TCP 连接(如果报错 /tmp/mysql.sock,你可以尝试这种方式连接)
mysql -uroot -h 127.0.0.1 -p
socket 连接
mysql -uroot -p
vi /etc/my.cnf
[mysqld] datadir=/usr/local/mysql/data basedir=/usr/local/mysql socket=/var/lib/mysql/mysql.sock(跟这个socket路径一样) user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid # 新增 [client] port=3306 socket=/var/lib/mysql/mysql.sock
设置登录密码
[root@iZ2ze4owq6ailug7vb38z5Z ~]# mysql -uroot -p
[root@iZ2ze4owq6ailug7vb38z5Z ~]# mysqladmin -u root password "1" # 给root用户配置密码:1
[root@iZ2ze4owq6ailug7vb38z5Z ~]# mysql -uroot -p1 # 配置完密码后必须使用密码登录
- 如果出现下面报错:
Please use mysql_upgrade to fix this error.
[root@iZ2ze4owq6ailug7vb38z5Z ~]# mysql_upgrade -u root -p
- 修改mysql密码
mysql> alter user 'root'@'localhost' identified by 'xxxxxx';
mysql> flush privileges;
设置root远程登录权限
修改连接权限
更改加密方式
mysql> use mysql; mysql> update user set host='%' where user ='root'; mysql> update user set plugin='mysql_native_password' where user ='root';
修改数据库密码
alter user 'root'@'%' identified by 'xxxxxx'; flush privileges;
连接MySQL
[root@iZ2ze4owq6ailug7vb38z5Z ~]# mysql -uroot -p
Enter password: ******
mysql -h 主机名 -u 用户名 -p
- 参数说明
- -h : 指定客户端所要登录的 MySQL 主机名, 登录本机(localhost 或 127.0.0.1)该参数可以省略;
- -u : 登录的用户名;
- -p : 告诉服务器将会使用一个密码来登录, 如果所要登录的用户名密码为空, 可以忽略此选项。
Win10安装MySQL
下载mysql

安装

配置环境变量
- Mysql 安装目录对应的 bin 目录放在系统变量的 path 里面
C:\Program Files\MySQL\MySQL Server 8.0\bin
1

验证是否成功
