mysql数据库详细安装步骤
1.在root身份下输入执行命令:
yum -y update
2.检查是否已经安装MySQL,输入以下命令并执行:
mysql -v
如出现-bash: mysql: command not found 则说明没有安装mysql
也可以输入rpm -qa | grep -i mysql 查看是否已经安装mysql
并查看下是否有mariadb,mariadb是mysql的一个分支它的存在也会对mysql有影响
rpm -qa | grep -i mariadb
3.下载mysql安装包
mysql8.0版本:
yum install https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
mysql5.7版本
yum install https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
4.安装mysql安装包
yum -y localinstall mysql80-community-release-el7-3.noarch.rpm
5.安装MySQL服务器
yum install -y mysql-server
如果显示
从 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql 检索密钥
源 "MySQL 8.0 Community Server" 的 GPG 密钥已安装,但是不适用于此软件包。请检查源的公钥 URL 是否配置正确。
失败的软件包是:mysql-community-server-8.0.34-1.el7.x86_64
GPG 密钥配置为:file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
则输入以下命令跳过跳过GPG检查
yum install -y mysql-server --nogpgcheck
6.查看mysql服务是否启动,没启用则启用mysql服务
输入以下命令查看服务状态
systemctl status mysqld.service
inactive状态为未启用状态
输入以下命令启用mysql服务
systemctl start mysqld.service
再查看一下服务状态:
显示启动成功
7.更改MySQL数据目录的所有者和所属组为mysql
用户和组
chown -R mysql:mysql /var/lib/mysql
8.查看mysql的初始密码 并修改密码
cat /var/log/mysqld.log |grep localhost
DqhFHjZcK3:= 这个为mysql的初始化密码
使用这个密码登录mysql服务器 ,显示以下情况表示登录成功
进入mysql服务器后 修改root密码
alter user 'root'@'localhost' IDENTIFIED BY 'Sl990124.'
注意8.0版本不能使用低安全的密码,会提示以下情况
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'sl123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql数据库常见问题
1.mysql数据库卸载命令:
yum remove mysql mysql-server mysql-libs compat-mysql51
彻底删除MySQL,包括数据和配置文件:
rm -rf /var/lib/mysql
rm /etc/my.cnf
2.如果使用远程工具连接mysql 如果拒绝访问的话使用以下方法
a.查看数据权限
use mysql;
select host from user where user='root';
b.执行更新权限语句
update user set host = '%' where user ='root';
重新远程连接此数据库
3.创建数据库用户和授权数据库的命令
创建新用户命令如下:
CREATE USER 'zhangsan'@'localhost' IDENTIFIED BY 'Aa23456!';
//这条命令创建了一个名为'zhangsan'的新用户,该用户只能从本地主机(localhost)连接到MySQL服务器。密码设置为'Aa23456!'。
CREATE USER 'lisi'@'127.0.0.1' IDENTIFIED BY 'Aa23456!';//这条命令创建了一个名为'lisi'的新用户,该用户可以从本机(IP地址为127.0.0.1)连接到MySQL服务器。密码设置为'Aa23456!'。
CREATE USER 'wangwu'@'%' IDENTIFIED BY 'Aa23456!';这条命令创建了一个名为'wangwu'的新用户,该用户可以从任何主机(由通配符'%'表示)连接到MySQL服务器。密码设置为'Aa23456!'。
授权数据库命令如下用于授予用户特定的权限:
GRANT SELECT, INSERT ON mysqldb.user TO ‘zhangsan’@‘localhost’;
这个命令将授予用户“zhangsan”在“mysqldb”数据库中的“user”表上的所有SELECT和INSERT权限。同时,限制该用户只能从本地主机(localhost)连接到MySQL服务器。
GRANT ALL ON *.* TO ‘lisi’@‘127.0.0.1’;
这个命令将授予用户“lisi”在所有数据库和表上的所有权限。同时,限制该用户只能从本地主机(127.0.0.1)连接到MySQL服务器。
GRANT ALL ON mysqldb.* TO 'wangwu'@'%';
这个命令将授予用户“wangwu”在“mysqldb”数据库中的所有表上的所有权限。同时,使用“%”作为主机名通配符表示该用户可以从任何主机连接到MySQL服务器。
GRANT ALL PRIVILEGES ON mysqldb.* TO 'wangwu'@'%';
这个命令与第三条命令类似,但是使用了GRANT ALL PRIVILEGES代替了GRANT ALL。这意味着该用户被授予了所有MySQL权限,包括SELECT、INSERT、UPDATE和DELETE等所有权限。同时,使用“%”作为主机名通配符表示该用户可以从任何主机连接到MySQL服务器。