mysql下载地址https://dev.mysql.com/downloads/mysql/
一定要下载正确的版本
rpm -qa | grep mariadb
rpm -e mariadb-libs-5.5.56-2.el7.x86_64 --nodeps 命令卸载 mariadb
tar -xvf mysql-8.0.19-1.el7.x86_64.rpm-bundle.tar
rpm -ivh mysql-community-common-8.0.19-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-libs-8.0.19-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-client-8.0.19-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-server-8.0.19-1.el7.x86_64.rpm --nodeps --force
mysqld --initialize
chown mysql:mysql -R /var/lib/mysql
systemctl start mysqld.service
systemctl enable mysqld
cat /var/log/mysqld.log | grep password
#PRw9AZp3ao.&是随机生成的密码
2020-04-08T08:08:02.924921Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: PRw9AZp3ao.&
通过mysql -uroot -p敲回车键进入数据库登陆界面,输入查询到的随机生成的密码
设置root用户新的密码为root
alter user 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
flush privileges;
exit;
修改密码后查看mysql运行状态
systemctl status mysqld
mysql> create user 'root'@'%' identified with mysql_native_password by 'root';
-> grant all privileges on *.* to 'root'@'%' with grant option;
-> flush privileges;
mysql8版本和mysql5版本的加密规则不一样,现在可视化工具只支持旧的加密方式
show databases;
创建数据库
create database dw;
CREATE TABLE `job_metadata` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '作业编号',
`dag_id` varchar(255) DEFAULT NULL COMMENT 'dag编号',
`job_nm` varchar(255) DEFAULT NULL COMMENT '作业名称',
`job_desc` varchar(255) DEFAULT NULL COMMENT '作业描述',
`job_tp` varchar(255) DEFAULT NULL COMMENT '作业类型',
`dir` varchar(255) DEFAULT NULL COMMENT 'kettle目录',
`job_cmd` varchar(255) DEFAULT NULL COMMENT '作业运行命令',
`createTime` datetime DEFAULT NULL COMMENT '创建时间',
`updateTime` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
vim /etc/my.cnf
#
lower_case_table_names=1
default-storage-engine=INNODB
character-set-server=utf8
collation-server=utf8_general_ci
lower_case_table_names: 此参数不可以动态修改,必须重启数据库
lower_case_table_names = 1 表名存储在磁盘是小写的,但是比较的时候是不区分大小写
lower_case_table_names=0 表名存储为给定的大小和比较是区分大小写的
lower_case_table_names=2, 表名存储为给定的大小写但是比较的时候是小写的
忘记mysql密码或者需要修改密码时,可通过修改/etc/my.cnf文件,加上skip-grant-tables,实现免密码登陆mysql
vim /etc/my.cnf
#skip-grant-tables