Linux系统安装MySQL

作者:陆金龙    发表时间:2022-04-06 20:48   

关键词

1 添加rpm源,选择较新的源命令

wget -i http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm

yum -y install mysql57-community-release-el7-7.noarch.rpm

yum repolist enabled | grep mysql

 

报错1

Loaded plugins: extras_suggestions, langpacks, priorities, update-motd

You need to be root to perform this command.

解决方案1:输入su 回车输入root密码

报错2提示su: Authentication failure,

解决方案2:输入sudo passwd root,输入devops账号的密码,修改一次密码。下次再su的时候只要输入密码就可以成功登录了。

报错3:devops is not in the sudoers file  This incident will be reported.

解决方案3:编辑sudoers文件
vi /etc/sudoers
找到这行 root ALL=(ALL) ALL,在下面添加 devops ALL=(ALL)   ALL

重新尝试解决方案1和解决方案2

2 安装mysql 服务器

yum install mysql-community-server

这步可能很慢,有的镜像比较慢,可能超过5小时。可以取消,重新来一遍。

3 启动mysql

service mysqld start

4 查看mysql是否自启动,设置开启自启动

chkconfig --list | grep mysqld

chkconfig mysqld on

systemctl enable mysqld.service

5 设置密码

mysqladmin -uroot -p mysql

Enterpassword:xxxxxx

error: 'Access denied for user 'root'@'localhost' (using password: YES)'

解决如下:

1.停止mysql服务

systemctl stop mysqld.service

2.修改配置文件无密码登录

vi /etc/my.cnf

在最后加上

skip-grant-tables

保存 (:wq)

3.启动mysql

systemctl start mysqld.service

4.登录mysql

mysql -u root

注意这里不要加-p

5.修改密码,mysql5.7用此语法

use mysql;

update mysql.user set authentication_string=password('123456') where user='root' ;

密码简单,会引发报错:1819 Your password does not satisfy the current policy requirements

update mysql.user set authentication_string=password('***@***') where user='root' ;

update mysql.user set authentication_string=password('King@0415') where user='root';

flush privileges;

6.回到第二把刚加的那句skip-grant-tables 删掉

保存,重启mysql就可以了

systemctl stop mysqld.service

systemctl start mysqld.service

7.登录mysql

mysql -u root -p

Enterpassword:xxxxxx

8.设置密码不过期

mysql> use jira

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

 

密码过期了,修改密码,设置永不过这期。

SET PASSWORD = PASSWORD('King_0415');

ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;

flush privileges;

9.添加用户

CREATE USER 'king@localhost' IDENTIFIED BY 'xx@xxxxxx'

创建远程连接用户

GRANT ALL PRIVILEGES ON *.* TO 'kinglong'@'%' IDENTIFIED BY 'xx@xxxxxx' WITH GRANT OPTION;

(第一个itoffice表示用户名,%表示所有的电脑都可以连接,也可以设置某个ip地址运行连接,第二个itoffice表示密码)。

10.设置时区

set global time_zone = ‘+8:00’;#修改MySQL全局时区为背景时间

set time_zone =  ‘+8:00’; #修改当前会话时区

flush privileges; #立即生效