linux下安装配置mysql8.0

一、安装数据库

使用命令查看是否安装mariadb相关包

rpm -qa | grep mariadb

如果存在卸载

rpm -e mariadb-server-5.5.60-1.el7_5.x86_64 --nodeps

rpm -e mariadb-libs --nodeps

卸载之后使用命令查看mariadb是否存在

rpm -qa | grep mariadb

然后安装数据库,依次安装下面rpm包

rpm -ivh mysql-community-common-8.0.19-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-8.0.19-1.el7.x86_64.rpm  

rpm -ivh mysql-community-client-8.0.19-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-8.0.19-1.el7.x86_64.rpm

安装之后查看是否安装成功

rpm -qa | grep mysql

查看数据库状态

systemctl status mysqld

数据库未启动手动可手动启动服务,确认数据库服务可以正常启动

service mysqld restart

停止数据库服务

service mysqld stop

删除mysql

rm -rf /var/lib/mysql

注:不在意数据的话直接删除数据,否则需先备份数据库数据

二、配置数据库

1 数据库设置忽略表名大小写

1、编辑/etc/my.cnf     vim /etc/my.cnf

最后一行加入lower_case_table_names=1

2、查看数据库是否忽略表名大小写

使用如下命令查看:

SHOW VARIABLES where Variable_name like 'lower%';

显示lower_case_table_names的value是1即可

2 重置数据库密码

1、修改配置文件vim /etc/my.cnf 在 [mysqld]最后加上如下语句 并保持退出文件;

skip-grant-tables

2、启动数据库服务

service mysqld restart

3、免密码登录到mysql上;直接在命令行上输入:

mysql或者mysql -u root –p 直接回车

4、首先查看当前root用户相关信息,在mysql数据库的user表中;

use mysql;

select host, user, authentication_string, plugin from user;

5、如果当前root用户authentication_string字段下有内容,先将其设置为空;

update user set authentication_string='' where user='root';

6、退出mysql, 删除/etc/my.cnf文件最后的 skip-grant-tables

重启mysql服务  service mysqld restart

7、使用root用户进行登录,因为上面设置了authentication_string为空,所以可以免密

码登录;

mysql -u root -p直接回车

8、使用ALTER修改root用户密码

use mysql;

ALTER user 'root'@'localhost' IDENTIFIED BY '你的密码';

3 解决数据库乱码

1、输入如下命令

mysql -u root -p

2、输入密码进入数据库

3、输入sql语句:

show variables like '%time_zone%';

4、输入命令:

set global time_zone='+8:00';

5、输入命令查看是否设置成功

show variables like 'character%';

4 开启远程访问

1、停止mysql 服务

service mysqld stop

2、去除default_authentication_plugin=mysql_native_password 的#

3、mysql -u root -p ‘你的密码’    // 进入数据库

4、使用以下命令开启root用户远程访问权限:

use mysql;

CREATE USER 'root'@'%' IDENTIFIED BY '你的密码';

GRANT ALL ON *.* TO 'root'@'%';

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';

5、刷新权限

FLUSH PRIVILEGES;

6、关闭防火墙或放过mysql端口

systemctl stop firewalld

7、测试数据库是否可以远程访问

另外一台机器使用数据库工具连接数据库,例:使用Navicat连接,连接成功即可。

FAQ远程连接报错常见问题:
(1)连接报错2003
https://www.cnblogs.com/zmdComeOn/p/10186497.html
(2)连接报错2059
https://juejin.im/entry/5af5d2786fb9a07aaf3547cc

猜你喜欢

转载自blog.csdn.net/qq_34870631/article/details/105412736