centos7下安装msyql
很久没有安装过mysql了,今天来安装一下
虚机已备好,进入centos系统
1. 检查本机是否已安装了mysql
2 到mysql的官网去下载文件,如图
3,下载到主机,使用wget 命令
安装时候才发现有依赖的问题,直接说结果了
要下载的有4个文件rpm 包,并且它们是有安装顺序的,按以上的顺序安装
a. mysql-community-common-5.7.26-1.el7.x86_64.rpm
b. mysql-community-libs-5.7.26-1.el7.x86_64.rpm
c. mysql-community-client-5.7.26-1.el7.x86_64.rpm
d. mysql-community-server-5.7.26-1.el7.x86_64.rpm
在安装 最后一个server 的时候有可以提示要依赖 net-tools ,管它是什么 yum -y install net-tools
这里mysql就已经安装好了,之后,要进入mysql
mysql的配置文件在 /etc/my.cnf中
vim /etc/my.cnf 可以看到 mysql的log日志的地址
然后 在命令行 写入 mysqld --initialize 初始化一下数据库
这里对上面的一行命令做一下说明
为了保证数据库目录为与文件的所有者为 mysql 登陆用户,如果你是以 root 身份运行 mysql 服务,需要执行下面的命令初始化
mysqld --initialize --user=mysql
如果是以 mysql 身份运行,则可以去掉 --user
选项。
另外 --initialize
选项默认以“安全”模式来初始化,则会为 root 用户生成一个密码并将该密码标记为过期,登陆后你需要设置一个新的密码,而使用 --initialize-insecure
命令则不使用安全模式,则不会为 root 用户生成一个密码。
使用的 --initialize
初始化的,会生成一个 root 账户密码,密码在log文件里,红色区域的就是自动生成的密码
之后,看一下log 文件中生成的文件 找有 password的那一行
当在命令行 使用 -uroot -p 输入密码是又得到一个错误
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'
这个问题的解决方法是 修改 /etc/my.cnf 文件
之后重启mysql service mysqld start 或者 service mysqld restart
你会发现 mysql fail , fail,fail 什么情况这是,看一下 /var/log/mysqld.log 从日志中我们可看到
应该是文件没有写权限了,文件名叫 ibdatal
所以就全盘查找 find / -name ibdatal
更改权限之后,再使用root 和那个密码可以登录了
当第一次登录mysql的时候不管运行任何命令,都是不成功的,提示让你 alter 一下
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
解决方式如下: (1)MySQL版本5.7.6版本(以前)用户可以使用如下命令: mysql> SET PASSWORD = PASSWORD('l!vWT#mL93'); (2)MySQL版本5.7.6版本(开始后)的用户可以使用如下命令: mysql> ALTER USER USER() IDENTIFIED BY 'l!vWT#mL93';
修改好自己使用的密码就可以了