1.查询数据库版本
mysql> select version();
±----------+
| version() |
±----------+
| 5.7.17 |
±----------+
1 row in set (0.00 sec)
2.解析表结构
mysql> desc test;
±-------±--------------------±-----±----±--------±---------------+
| Field | Type | Null | Key | Default | Extra |
±-------±--------------------±-----±----±--------±---------------+
| id | bigint(20) unsigned | NO | PRI | NULL | auto_increment |
| val | int(10) unsigned | NO | MUL | 0 | |
| source | int(10) unsigned | NO | | 0 | |
±-------±--------------------±-----±----±--------±---------------+
3 rows in set (0.00 sec)
3.如何判断当前MySQL是否支持分区?
命令:show variables like ‘%partition%’ 运行结果:
mysql> show variables like ‘%partition%’;
±------------------±------+| Variable_name | Value |±------------------±------+| have_partitioning | YES |±------------------±------+1 row in set (
have_partintioning 的值为YES,表示支持分区。
4.开启mySql远程访问权限
链接服务端(即在mysql本地服务器)后,操作mysql数据库,以下皆为登录后的操作
-
使用命令
use mysql;
-
查询表
select User,authentication_string,Host from user
这里也可以看出host默认都是localhost访问权限,接下来开始授权 -
GRANT ALL PRIVILEGES ON *.* TO 'test'@'%' IDENTIFIED BY '123456'
这里的123456为你给新增权限用户设置的密码,%代表所有主机,也可以具体到你的主机ip地址, -
刷新权限
flush privileges;
重新链接即可!
4.关于group报错 sql_mode=only_full_group_by
- sql_mode查询命令
select @@GLOBAL.sql_mode;
- 设置模式
set @@GLOBAL.sql_mode=STRICT_TRANS_TABLES
即可
但是服务器重启后,或sql服务重启后会失效。
linux可以修改 /etc/my.cnf 文件,将其中的sql_mode 改为STRICT_TRANS_TABLES ,如果没有sql_mode的字段
则添加以下内容,重启mysql服务即可systemctl restart mysqld.service
[mysqld]
sql_mode='strict_trans_tables'