1.mysql初步使用
1.1简单使用
mysql -uroot -p # 连接数据库
修改root密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123mysql';
关于数据库的主键和外键,可以看关于数据库主键和外键(终于弄懂啦)
1.2 mysql网络共享
1.如果没有 user=root ,host = % 的用户,则执行下面语句:
mysql> update user set host=‘%’ where user=‘root’;,要查看是否有该用户,可以登录mysql,进入mysql库查看user表查看。
2.给 root 授权(所有权限)
GRANT ALL PRIVILEGES ON . TO ‘root’@‘%’ IDENTIFIED BY ‘root’ WITH GRANT OPTION; 这里其中两个root 分别代表 “用户名”和“密码”
3.最后刷新权限mysql> flush privileges
注意:这里user表要留个root的host=“localhost”的用户,因为我发现我的用户表里少了这个总是出1045错误,经常出1045错的可以留一下。
1.3 设置、添加主键以及自增问题
1.下面设置在创建表时,将int型sno为主键。
create table table_name(sno int(4) primary key,sname varchar(15),age int(11));
2.创建表后,将某列 col 或者将某属性设置为主键
alter table table_name add primary key (col_name);
更多请看MySQL 设置、添加主键以及自增问题
1.4 MySQL添加新用户、创建数据库、为新用户分配权限
2.报错解决
最常见的1045错误:mac下mysql 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: 请看mac下mysql 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password:,亲测有效。
在将文本写入mysql时,经常会遇到错误:“1366, “Incorrect string value: ‘\xE7\xA6\x8F\xE5\xBB\xBA…’ for column”,这种错误来自数据编码的错误
可以通过sql语句"alter table students convert to character set utf8"转换编码格式为"utf8”,这里转换的是表的编码格式,当然也可以转换整个数据库的编码格式:“alter database test character set utf8”。具体可以查看这里mysql修改数据库编码格式