第1数据库下载:
第2解压
建议不解压到C盘:
第3安装数据库
初始化MySQL,在安装时,避免权限问题出错我们尽量使用管理员身份运行CMD,否则在安装时会报错,会导致安装失败的情况,如下图所示:
mysql-8.0.23-winx64\bin> 到这下面执行 mysqld --initialize --console
密码保留后面需要修改:
root@localhost: %kNvBESfb8-t
第4步安装数据库服务
安装MySQL服务,输入 mysqld --install [服务名](服务名可以不加默认为mysql):
第5步启动sql服务器
服务安装成功之后输入 net start mysql(启动MySQL的服务) ,如下图所示:
打开数据库管理的软件:
登录后出现这个界面自己修改密码:
数据库安装完毕!
常用指令
登录 systemctl start mysqld mysql -u username -p passwd mysql -u username -p 用户 创建 create user username identified by ‘passwd’; create user ‘username’@‘IP’ identified by ‘passwd’; craete user ‘username’@’%’ identified by ‘passwd’; 修改 rename user username to new_username; 修改密码 alter user username identified by ‘new_passwd’; flush privileges; #mysql 新设置用户或更改密码后需用flush privileges刷新MySQL的系统权 限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效。 删除 drop user username; 授权: grant privileges on database.table to user; 例:grant all privileges on . to user@’%’; 具体权限分类可以参考:MySQL用户及权限 查看用户权限 SHOW GRANTS FOR ‘username’ [@host]; 回收权限: revoke privileges on database.tables from username[@host]; 数据库 创建 create database [if not exists] db_name [create_specofication[,create_specification]…] 例:create database testdb1; create database if not exit testdb2 charset=utf8 collect utf8_general_ci; #使用utf字符集,并带较对规则 修改 alter database testdb2 chartest=gbk; 删除 drop database db_name; 备份: #备份:数据表结构+数据 mysqdump -u root db1 > db1.sql -p #备份:数据表结构 mysqdump -u root -d db1 > db1.sql -p #导入现有的数据到某个数据库 #1.先创建一个新的数据库 create database db10; #2.将已有的数据库文件导入到db10数据库中 source /dir/dbq.sql 显示所有数据库 show databases; 选中数据库 use db_name; 查看当前数据库 select database(); 列出当前数据库的表 show tables; 表 创建 create table table_name (column_name column_type); 例:create table testtb1(st_id varchar(10),name varchar(100),primary key (id))ENGINE=InnoDB DEFAULT CHARSET=utf8; 查看表结构 desc table_name; 删除 drop table table_name; 修改: 添加: alter table testtb1 add age int after id; alter table testtb1 add grade varchar(100); 修改列类型: alter table testtb1 modify grade varchar(200); 删除: alter table teattb1 drop grade; 修改列名: alter table tsettb1 change st_id id auto_increment; 修改表名: alter table testtb1 rename to student; 数据 增加: insert into table_name[(column,…)] values (value[,value]) 例:insert into testtb1(age) values(22); insert into testtb1 values(2,22,‘testname’); insert into testtb1 values(2,22,‘testname’),(3,21,‘testname1’),(4,22,‘testname3’);; 修改: update testtb1 set age=age+1 where id=2; update testtb1 set age=22; #修改所有age都为2 删除: delete from table_name; delete from testtb1 where id=1; delete from testtb1; #删除所有记录,但表结构还在 可不看:truncate table table_name; 区别:truncate快,但delete可带where条件;delete返回记录数,tuncate返回0;建议使用delete 查询: select * from testtb1; select id,age from testtb1; selest * from testtb1 order by id; select * from testtb1 where id>2 and name like ‘te%’ order by id desc; 查看记录总数: select count(*) from table_name; 求平局值: select avg(age) from testtb1; 其他:sum(),group by,索引,视图,连接