一、管理MySql
1、启动及关闭mysql
Windows:
cd c:/mysql/bin
mysql --console
mysqladmin -uroot shutdown
Linux:
ps -ef |greo mysql 如果mysql已经启动,将会输入进程列表 未启动的话
cd /usr/bin
./mysql_safe &
./mysqladmin -u root -p shutdown
2、mysql用户设置
添加新用户 用户名guest 密码guest123 并授权select insert和update
INSERT INTO user (host,user,password,select_priv,insert_priv,update_priv) VALUES ('localhost','guest',PASSWORD('guest123'),'Y','Y','Y');
FLUSH PRIVILEGES
添加用户时需使用mysql提供的PASSWORD函数来加密密码,该加密函数在8.0中已经移除,使用MD5加密;
在mysql5.7中,新增用户表中的password字段已经换成了authentication_string
执行Flush语句是为了刷新授权表,否则需重启才能使新增的用户生效
3、/etc/my.cnf配置文件
一般情况下不需要修改mysql配置文件,mysql存储路径,错误日志存储路径等
4、管理mysql的命令
use DBname #选择数据库操作,执行完之后,所有sql命令都只针对该数据库
show databases #列出mysql数据库中的数据库列表
show tables #展示制定库的所有表
show columns from table #展示数据表的属性,属性类型,是否为null,默认值等信息
show index from table 显示数据表的详细索引信息,包括primary id
show table status like 【from db_name】【like‘pattern’】\G: #该命令输出mysql数据库管理系统的性能及统计信息
二、连接mysql(python)
#首先确定已经安装的mysqldb模块
#连接mysql
db = MyAQLdb.connect('localhost','user','password','dbname',charset = 'utf-8')
#获取游标用来操作db
cousor = db.cousor
SQL = ‘’‘。。。’‘’
try:
cousor.execute(sql)
except:
db.rollback()
db.close()
三、创建数据库
CREAT DATABASE 数据库名;(须有对应权限)
root用户可以直接创建
mysqladmin -u root -p creat YUNOOB
使用python创建数据库
#如果存在该库的话需要手动删除
cousor.execute("DROP TABLE IF EXISTS DB")
#编写创建库的sql语句,字段名及限制要求
sql = ‘’'''CREAT TABLE DB(
FIRST_NAME CHAR(20)NOT NULL,
LAST_NAME CHAR(20),
AGE INT,
INCOME FLOCT)‘’'''
#执行sql
cousor.execute(sql)
#关闭sql连接
db.close
四、数据库 插入数据
sql = ‘’‘’‘’INSERT INTO TABLE(NAME1,NAME2)
VSLUES(VALUE1,VALUE2)''''''
try:
cousor.execute(sql)
db.commit()
except:
db.rollback()
db.close()
五、数据库查询
sql = '' SELECT * FROM TABLE WHERE NAME1 = %S,%()'''
try :
cousor.execute(sql)
results = cousor.fetchall()
for row in results:
name1 = row[0]
name2 = row[0]
print ('name1=%s,name2=%s',%(name1,name2))
execept:
print('error')
db.close
六、数据库更新操作
SQL = ‘’update DB set name1 = name1+1 where id = ‘’‘
try:
cousor.execute(sql)
db.commit()
db.close
七、删除操作
sql = 'delete frome DB where ,,,'
八、执行事务
commit 提交 rollback 回滚