Linux虚拟机、服务器上安装MySQL

注意:安装过程需要通过管理员权限安装,否则会提示权限不够

切换权限

root用户是Linux系统的最高权限用户,使用如下命令从普通用户切换到root用户:

[mysql@localhost admin]# su root

键入回车键后,系统提示输入密码,进入root用户。

检测系统

安装前,检测系统是否自带安装MySQL:

rpm -qa | grep mysql

如果有安装则会跳出相应的mysql文件,可以选择进行卸载:

rpm -e mysql  // 普通删除模式
rpm -e --nodeps mysql  // 强力删除模式

安装MySQL

由于我使用的是CentOS7,(如果不是这个系统的可以自己去找找)在这个版本中MySQL数据库默认移除,故需自己安装:

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm //下载这个rpm资源包
rpm -ivh mysql-community-release-el7-5.noarch.rpm //下载好之后安装这个rpm包
yum install mysql-server //安装好资源包之后,安装mysql_server

之后开始下载安装,在这个过程中,会出现两个需要选择的地方,都选择y就好,然后表面上安装成功,测试一下:

[root@host]# mysqladmin --version

安装过程中可能会出现:
直接安装是不行的,提示中需要先安装依赖

Error downloading packages:
  mysql-community-server-5.6.45-2.el7.x86_64: [Errno 256] No more mirrors to try.

对应安装相应的软件包:

例: yum install mysql-server
	yum install  -y  mysql-community-server

如果安装成功则会出现:

mysqladmin  Ver 8.42 Distrib 5.7.27, for Linux on x86_64 //出现具体的版本号

如果没有输出任何信息,则安装未成功。
初始化MySQL:

mysqld --initialize

启动 MySQL:

systemctl start mysqld

查看 MySQL 运行状态:

systemctl status mysqld

登录MySQL

命令如下:

[root@host]# mysql

如果以上命令执行后输出 mysql>提示符,说明成功连接到Mysql服务器上,你可以在 mysql> 提示符执行SQL命令

注意:在5.7一下的版本,MySQL的初始密码为空,而mysql 5.7以上版本,MySQL数据库会带随机密码
所以可能会出现错误:

ERROR 1045 (28000): Access denied for user 'admin'@'localhost' (using password: NO)

这就是由于生成了随机密码,导致密码错误,(有些博客上改配置文件的我试了一下,没用啊~~~)查看随机密码登录就好:
查看随机密码:

grep 'temporary password' /var/log/mysqld.log //通过查找mysqld.log文件中的temporary password查找随机密码,

输入此命令后会显示随机密码:

[Note] A temporary password is generated for root@localhost: q.FFua-bd3yi //这是我的随机密码

登录MySQL:

[root@localhost admin]# mysql -u root -p  //通过这条命令连接到MySQL服务器
Enter password:						//将上面产生的随机密码输入即可登入成功,输入时,密码不显示,输入正确即可

更改MySQL密码

登录后使用简单的SQL命令出现:

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

提示要更改密码才能操作。

一般来说,更改的方式有三四种,我这里举一个栗子:

格式:mysql> set password for 用户名@localhost = password('new password');  
例子:mysql> set password for root@localhost = password('123456'); 

其他还有一些error:
MySQL没有打开,需要启动MySQL:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' 
原文地址:https://www.cnblogs.com/Indomite/p/14195250.html