Linux中安装Mysql

1.服务器及Mysql版本

百度云 CentOS / 8.1 x86_64 (64bit)

mysql Ver 8.0.21 for Linux on x86_64 (Source distribution)

2.执行yum命令进行安装

# 安装 yum install mysql-server

扩展

执行grep的时候可以看到有各种mysql-xx,简单使用的话安装这个mysql-server就好了.比如mysql-devel.x86_64就是给开发mysql的人用的.

image-20220310214402331

3.查看Mysql版本

# 查看版本 mysql -V

4.设置初始密码

启动mysql才能设置密码.

systemctl start mysqld #启动mysqld systemctl status mysqld #查看 MySQL Server 状态

设置密码

# 替换new-password,密码不包括'' mysqladmin -u root password 'new-password' #或者 set password for 'root'@'localhost' = password('new-password');

5.Mysql服务启动等操作

systemctl start mysqld #启动mysqld systemctl stop mysqld #停止mysqld systemctl restart mysqld #重启mysqld systemctl enable mysqld #设置开机启动 systemctl status mysqld #查看 MySQL Server 状态

这个时候用Navicat等工具会发现,连接不上,因为root用户默认只允许本机(刚进行安装操作的服务器)上访问.

image-20220310212817545

6.服务器上登录Mysql

mysql -u root -p # 输入刚才设置的密码

7.设置Mysql用户的ip访问权限

7.1 选择使用库:mysql

现在进入到了服务器的mysql中

# 1.选择数据库mysql use mysql; # 2.修改root用户的ip访问权限: %代表所有,默认的localhost只能在本机访问. #设置用户root可以在任意IP下被访问: grant all privileges on . to root@"%" identified by "密码"; #或者 update user set host = '%' where user = 'root';

7.2 刷新权限

flush privileges;

其实就是改了数据库mysql下user表的字段值

image-20220310213338398

7.3 成功连接

image-20220310213238855

7.4 命令行中退出

# 输入quit即可 mysql> quit Bye [root@yang37 ~]#

8.创建Mysql的其他用户并授权

root用户权限很大,用Navicat之类的第三方连接或者平时写代码时用个小权限的用户就好了.

8.1 语法

GRANT privileges ON dbname.tablename TO 'username'@'host'
  • privileges

    用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL

  • dbname

    数据库名

  • tablename

    表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示

8.2 示例1

#创建用户 CREATE USER 'username'@'%' IDENTIFIED BY 'password'; #用户授权 # db01库table01表: INSER权限 GRANT SELECT, INSERT ON db01.table01 TO 'username'@'%'; # *库*表 ALL权限 GRANT ALL ON *.* TO 'username'@'%'; # maindataplus库*表 ALL权限 GRANT ALL ON maindataplus.* TO 'username'@'%'; #刷新权限 flush privileges;

能否给用户授权也是个权限,如果想让该用户可以授权,用这个命令:

GRANT privileges ON dbname.tablename TO 'username'@'%' WITH GRANT OPTION;

8.3 示例2

#授权用户yang在za7za8这个数据库下有所有的操作权限 grant all privileges on za7za8.* to yang; #刷新权限 flush privileges;

8.4 扩展

场景一:

由于权限配置项太多了,平时使用自定义用户发现权限不够.

想把root用户访问权限回去%,好在Navicat中操作root加些权限(记录下服务器命令好复制)

# 登录服务器,连接mysql. mysql -u root -p # 选择数据库: mysql use mysql; # 更新root访问权限 - 任意 update user set host = '%' where user = 'root'; # 刷新权限 flush privileges; # ---------------------------------- # 更新root访问权限 - 本机 update user set host = 'localhost' where user = 'root'; # 刷新权限 flush privileges;

9.图形化工具

9.1 Navicat

image-20220310214103056

image-20220310214031393

默认显示所有的数据库,在这里可以配置连接时打开哪个具体的数据库.

image-20220310214003318

9.2 Sqlyog

image-20201119235902301


__EOF__

本文作者羊37
本文链接https://www.cnblogs.com/yang37/p/14008742.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   羊37  阅读(182)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示