首页 / MYSQL / 操作 mysql 数据库
操作 mysql 数据库
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了操作 mysql 数据库,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3577字,纯文字阅读大概需要6分钟。
内容图文
![操作 mysql 数据库](/upload/InfoBanner/zyjiaocheng/878/d78bb0000850448099bdb9084d771c45.jpg)
mysql基本操作
- 连接mysql数据库
mysql -h 服务器地址 -u root -p 不要在p后面直接跟密码
- 忘记密码
1.到/etc/mysql/mysqld.conf.d/,编辑mysqld.conf
sudo vim mysqld.conf
2.到[mysqld]下
添加:skip-grant-tables
保存退出
3.重启mysql服务:
sudo service mysql restart | stop | start
4.重新登录mysql,这个时候不需要密码,登录进去后:
use mysql;
update user set authentication_string=PASSWORD("输?你想设置的密
码") where user='root';
update user set plugin="mysql_native_password";
flush privileges;
5.重启mysql服务
sudo service mysql restart
- 远程连接
1.通过mysql -u?户名 -p登录mysql数据库
2.创建?个新?户来远程连接
create user 'python'@'%' identified by '123'
GRANT ALL PRIVILEGES ON *.* TO 'python'@'%' IDENTIFIED BY
'123' WITH GRANT OPTION;
3.执?命令:flush privileges;
4.退出mysql,到/etc/mysql/mysql.conf.d下,编辑mysqld.cnf
找到 “bind-address = 127.0.0.1” , 这??要注释掉,只需在前?加个
#
5.重启mysql服务
sudo service mysql restart | start | stop #重启、启动、停?
或者:sudo /etc/init.d/mysql restart | start | stop
6.如果开启了防?墙,请添加3306端?
sudo ufw allow 3306
- 创建数据库
create database 数据库名
- 查看数据库
show databases;
- 删除数据库
drop database 数据库
- 选中库
use 数据库名
- 查看表
show tables;
- 查看数据库创建语句
show create database 数据库名
- 查看选中的数据库
select database()
- 修改数据库字符集
alter database student default charset=utf8;
特别注意!
- 每条命令结束必须使?; 或者 \g 结束
- 退出mysql使?命令quit或exit
操作数据库表
- 创建表
create table [if not exists] 表名(
字段名1 类型 [限制],
字段名2 类型 [限制],
...
字段名n 类型 [限制] #最后?列没有逗号
) [engine=myisam | innodb][ default charset=utf8];
primary key 主键 不允许有重复值,不允许为空
auto_increment ?增?,只对int型主键起作?
#复合主键
mysql> create table grade(
sid int ,
cid int,
score float,
primary key(sid,cid));
- 删除表
drop table 表名
- 复制表结构
create table 表名 like 其他表名
- 查看表结构
desc 表名;
- 查看建表语句
show create table 表名;
- 修改字段类型
alter table 表名 modify 字段名 类型 [限制] #增加字段
alter table 表名 add [column] 字段名 类型 [限制];
#删除字段
alter table 表名 drop [column] 字段名;
修改字段名和类型
alter table 表名 change [column] 旧字段名 新字段名 类型 [限制];
#修改表名
alter table 表名 rename 新表名
alter table 表名 [engine=myisam] [default charset=utf8];
可以通过first、after指定插?位置
alter table student add sno varchar(3) not null after sid; //在
sid列后插?
alter table student add sid int primary key auto_increment
first;//在第?列插?
- 字段限制
primary key 不允许空值,唯?
not null ?空
unique 唯?
default 缺省,默认值
数据增删改查
- 增
写法?:insert into 表名(字段1,字段2...) values(值1,值2...);
按照建表时的字段顺序进?插?,每?列都要给值
写法二:插?多个记录
insert into 表名(字段1,字段2...)
values(值1,值2...),
(值1,值2...),
(值1,值2...)....
- 改
update 表名 set 字段1=值1,字段2=值2... where 条件 #不加where修改的是所
有的记录
- 删
删除表中的数据,?增主键的值不会重新开始
delete from 表名 where 条件;#如果不加条件,会删除表中所有数据
alter table 表名 auto_increment = 5 # 设置?增主键开始值
清空表,?增主键的值重新开始编号
truncate
truncate table 表名,清空表中所有记录,等价于delete from 表名;
delete和truncate差别,truncate后,表中?增主键值从1开始
- 基础查询
select username,password from user;
select usernname as ?户名, password as 密码 from user; #可以给字段起
别名,as后面跟个别名
select * from user; #查询所有字段,慎?,?般不建议使?,会导致?法优化
sql语句
select 2018,username,password from user; #可以有常量,表达式
select sname,2018-year(sbirthday) from student; #year是mysql的内置函数
select distinct username from user; #去除重复记录 distinct 针对查询结
果去除重复记录,不针对字段
fun_sn
发布了3 篇原创文章 · 获赞 2 · 访问量 2230
私信
关注
内容总结
以上是互联网集市为您收集整理的操作 mysql 数据库全部内容,希望文章能够帮你解决操作 mysql 数据库所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。