官网下载对应的文件
地址:https://dev.mysql.com/downloads/file/?id=507442
安装之前检查是否有自带的MySQL 将其卸载
查看文件 进入root用户 su root
解压
tar -zxvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
移动
mv mysql-5.7.36-linux-glibc2.12-x86_64 /usr/local/mysql
在/usr/local/mysql目录下创建data目录
mkdir /usr/local/mysql/data
赋文件权限
chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql
编译安装并初始化mysql
切换到bin目录
执行 ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
修改配置文件my.cnf
:[client]Mdefault-character-set=utf8M[mysqld]Mcharacter_set_server=utf8Mdatadir=/usr/local/mysql/dat
a^Mport = 3306Msql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLESMsymbolic-links=0^Mmax_connections=4
00Minnodb_file_per_table=1M#表名大小写不明感,敏感为Mlower_case_table_names=1M#跳过权限表,添加该命>
^M# skip-grant-tables^
启动服务员器
/usr/local/mysql/support-files/mysql.server start
添加软连接,并重启服务
ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
service mysql restart
登陆mysql,密码为临时生成的密码
注意:
如果登陆失败 执行
yum install libncurses*
设置密码
set password for root@localhost=password(‘密码’);
开放远程连接(重要)
use mysql #访问mysql库
update user set host = ‘%’ where user = ‘root’; #使root能再任何host访问
FLUSH PRIVILEGES; #刷新
远程连接测试
root 用话–ifconfig
设置开机自启动
1、将服务文件拷贝到init.d下,并重命名为mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2、赋予可执行权限
chmod +x /etc/init.d/mysqld
3、添加服务
chkconfig --add mysqld
4、显示服务列表
chkconfig --list
命令行操作数据库
登录
查看数据库
show databases;
打开数据库
use 数据库名;
查看当前所在的数据库 select database();
创建数据库 create database 数据库名 charset=utf8;
删除数据库 drop database 数据库名;
命令行操作数据表
1.打开数据库: use 数据库名 2.打开表 :show tables;
3.表的操作遵循 基本原则
如果sql语句编写错误 可以 exit 退出
查询表字段信息 desc 表名
查看表的创建语句 show create table 表名;
存储过程 :
事物:保障操作序列要么都执行 要么不执行 即:A和B同时成功 否则同时失败;对于数据库而言 对数据操作要么都实现要么不实现 保证写到数据库的数据一致性;
实务操作的前提: 数据库的操作引擎必须是InnoDB(通过查看创表语句)
事物A
事物B
注意 当事物A提交后 事物B也成功
修改的数据还可以回滚 rollback
视图 :封装sql语句 类似表的形式实现
创建语句:
create view 视图名称 as select 语句;
create view v_student as select * from student;*
注意 再多表连接查询封装时,需要将重复字段起别名
视图名需要以V开头 因为 视图与表数据是一起显示的 为了加以区分
遗忘数据库密码操作
1.修改配置,实不需要密码
具备root权限
定位文件位置 locate my.cnf
打开配置文件 vi /etc/my.cnf
查看 是否已修改 cat /etc/my.cnf
2.登录数据库,修改密码
3.还原配置文件
与修改配置文件基本相同
切换root用户su -
定位配置文件位置locate my.cnf
使用vi工具打开配置文件vi /etc/my.cnf
在文件内容[mysqld]下方添加此内容,保存后退出skip-grant-tables
重新启动MySQL服务
systemctl restart mysq1d
重启完成可以通过查看状态命令进行验证systemctl status mysqld
MySQL 日志
自带日志功能 ,开启日志,及其消耗数据库性能,默认不开
--查看日志功能是否开启
show variables like 'genera1%';
--开启操作
set global general_1og = 1;
--关闭操作
set global general_1og = 0;