1,使用linux wget命令
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
2,安装mysql的依赖包
格式:yum -y install +对应安装源名 yum -y install mysql80-community-release-el7-3.noarch.rpm
3,在线安装mysql数据库
yum -y install mysql-community-server
4,启动Mysql
# 启动命令 systemctl start mysqld # 查看运行状态 systemctl status mysqld.service
5,查看生成的初始密码(字符串 root@localhost 后面便是,生成的初始密码)
grep "password" /var/log/mysqld.log
6,使用拿到的临时密码登录mysql
mysql -uroot -p
7,修改密码策略
SHOW VARIABLES LIKE 'validate_password%'; mysql> set global validate_password.policy=0; mysql> set global validate_password.length=1; // 修改密码 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
8,不推荐直接使用root用户通过外部访问数据库,建议创建用户给予对应所需权限即可
1,添加一个新用户 //只允许指定ip连接 create user '新用户名'@'localhost' identified by '密码'; //允许所有ip连接(用通配符%表示) create user '新用户名'@'%' identified by '密码'; //例: CREATE USER 'admin'@'%' IDENTIFIED BY 'admin'; 2,授权用户 格式:GRANT privileges ON databasename.tablename TO ‘username’@‘host’ 例:给admin用户授权study数据库中所有表的所有操作权限 GRANT ALL ON study.* TO 'admin'@'%'; privileges:表示要授予什么权力,例如可以有 select ,insert 等,如果要授予全部权力,则填 ALL databasename.tablename:表示用户的权限能用在哪个库的哪个表中,如果想要用户的权限很作用于所有 的数据库所有的表,则填 .,*是一个通配符,表示全部。 ’username‘@‘host’:表示授权给哪个用户。
8,使用Navicat进行访问测试,如果工具连接不通,请进行如下操作:
1,新装的mysql数据库的登陆用户列表是只有root用户和登陆主机只有本地主机即是只能在本地主机上登陆,如果远程登录会报错
先是:更改允许登陆进来的主机IP地址,找到/etc/my.cnf文件更改里面内容中的
bind-address = 127.0.0.1 改为 bind-address = 0.0.0.0 没有,则添加 bind-address = 0.0.0.0
添加不区分大小写:lower_case_table_names=1 如下图:
在数据库中把localhost的host更改为%
1. # 连接数据库 2. mysql -uroot -p 3. # 输入密码(注意输入密码时是看不见的) 4. ****** 5. # 查看数据库用户表 6. use mysql;select user,host from user;
查看数据库user表
修改已有的localhost用户为%,即任何机器都可以登录:update user set host = '%' where user = 'root';
修改后要刷新,FLUSH PRIVILEGES;
这步一定要做,否则无法生效。
9,启动mysql服务,关闭和重启
systemctl start mysqld systemctl stop mysqld systemctl restart mysqld