mysql 学习笔记

来源:互联网 发布:future java 编辑:程序博客网 时间:2024/06/09 13:13

1、官网下载mysql安装包安装
2、安装完毕后,在终端输入

@> mysql --version

显示如下版本信息说明正常:

mysql> mysql  Ver 14.14 Distrib 5.6.33, for osx10.11 (x86_64) using  EditLine wrapper

若显示command not found,在终端输入如下,”/usr/local/mysql/bin/mysql”为mysql默认安装路径:

mysql> cd /usr/local/bin/mysql> sudo ln -fs /usr/local/mysql/bin/mysql mysql
sudo /usr/local/mysql/support-files/mysql.server start //启动sudo /usr/local/mysql/support-files/mysql.server restart //重启sudo /usr/local/mysql/support-files/mysql.server stop //停止

还是比较麻烦,可以简化一下:在~/.bash_aliases中添加这样的命令:

alias mysqlstart='sudo /usr/local/mysql/support-files/mysql.server start'alias mysqlstop='sudo /usr/local/mysql/support-files/mysql.server stop'

如果没有.bash_aliases文件,可以创建一个,并在.bash_profile文件的最后加上这样的代码:

if [ -f ~/.bash_aliases ]; then. ~/.bash_aliasesfi

更新用户密码:

UPDATE mysql.user SET authentication_string=PASSWORD('123456') WHERE User='root';

三、用户授权
//登录mysql

mysql>mysql -u root -pmysql>密码

//首先为用户创建一个数据库(emaoDB)

mysql>create database emaoDB;

//授权cplusplus用户拥有cplusplusDB数据库的所有权限。

mysql> grant all privileges on emaoDB.* to test1@localhost identifiedby '123456';

//刷新系统

mysql> flush privileges;mysql>

四、部分授权

mysql> grant select,update on emaoDB.* to test1@localhostidentified by '123456';

//刷新系统权限表。
mysql>flush privileges;

五、删除用户

mysql>mysql -u root -pmysql>密码mysql>DELETE FROM user WHERE User=”cplusplus” and Host=”localhost”;mysql>flush privileges;

六、删除数据库

mysql>drop database cplusplusDB;

七、修改密码

mysql>mysql -u root -pmysql>密码mysql>update mysql.user set password=password(‘新密码’) whereUser=”cplusplus” and Host=”localhost”;mysql>flush privileges;

插入用户

mysql> insert into mysql.user(Host,User,Password) values("localhost","test1",password("123456"));

但在执行时报如下错误:
ERROR 1364 (HY000): Field ‘ssl_cipher’ doesn’t have a default value
原因:在我的配置文件my.cnf中有这样一条语句

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

指定了严格模式,为了安全,严格模式禁止通过insert 这种形式直接修改mysql库中的user表进行添加新用户

解决办法:

cd /usr/local/mysql/vim my.cnf

//保存只读文档

:w !sudo tee %

更多vim命令:
查看http://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html

将配置文件中的STRICT_TRANS_TABLES删掉,即改为:

sql_mode=NO_ENGINE_SUBSTITUTION

然后重启mysql即可

查询用户表

select * from mysql.user;//或SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
0 0