目录
一、数据库启动
1、通过yum安装
[root@CentOS7-0002 ~]# systemctl stop mysqld //停止
[root@CentOS7-0002 ~]# systemctl restart mysqld //重启
[root@CentOS7-0002 ~]# systemctl status mysqld //查看状态
[root@CentOS7-0002 ~]# systemctl start mysqld //启动
[root@CentOS7-0002 ~]# systemctl enable mysqld //设置开机启动
2、自定义安装目录
[root@CentOS7-0002 ~]# /etc/init.d/mysql stop
二、数据库连接
[root@CentOS7-0002 ~]# mysql -u nacos -pnacos //本地连接
[root@CentOS7-0002 ~]# mysql -h 192.168.65.56 -P 3306 -u nacos -pnacos //远程链接
三、修改用户密码
方法1: 用SET PASSWORD命令
格式:mysql> set password for 用户名@localhost = password('新密码');
例子:mysql> set password for root@localhost = password('123');
方法2:用mysqladmin
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例子:mysqladmin -uroot -p123456 password 123
方法3:用UPDATE直接编辑user表
update mysql.user set authentication_string=password('nacos') where user='nacos';
四、忘记root密码
1.编辑/etc/my.cnf配置文件,在[mysqld]下添加skip-grant-tables,然后保存并退出
2.重启mysql服务:service mysqld restart
3.重启以后,执行mysql命令进入mysql命令行进入,修改root用户密码
1 2 3 |
|
4.把/etc/my.cnf中的skip-grant-tables注释掉,然后重启mysql,即可、
五、设置MySql用户远程链接
1、授予登录权限
mysql> grant all on *.* to test@'%' identified by "password"; //授权
mysql>flush privileges; //更新数据库,立即生效
2、改表法
mysql>UPDATE user SET host = '%' WHERE user = 'test'; //修改t权限,%:任何ip都可以进行访问
mysql>flush privileges; //更新数据库,立即生效
六、数据库的导出
1、导出test_db数据库
命令:mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u root -p test_db > test_db.sql
导出所有数据库
mysqldump -u root -p –all-databases > mysql_all.sql
2、导出一个表
命令:mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u root -p test_db test1 > test_test1.sql
3、导出一个数据库结构
mysqldump -u root -p -d --add-drop-table test_db > test.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
七、数据库的导入
1、常用source命令
进入mysql数据库控制台,
mysql>source wcnc_db.sql
2、使用mysqldump命令
mysqldump -u username -p dbname < filename.sql
3、使用mysql命令
mysql -u username -p -D dbname < filename.sql
八、数据库权限
查看当前用户权限:show grants;
查看其它用户权限:show grants for 'user'@'%';
刷新权限:flush privileges;
权限分类:
数据权限分为:库、表和字段三种级别
管理权限主要是管理员要使用到的权限,包括:数据库创建,临时表创建、主从部署、进程管理等
程序权限主要是触发器、存储过程、函数等权限。
授权:grant 权限 on 数据库名.* to 用户名@localhost identified by '密码'; (多个权限,分隔)
grant SELECT, INSERT on nacos.* to 'nacos'@'%' identified by 'nacos';
flush privileges;
权限回收
revoke ELECT, INSERT on nacos.* from 'nacos'@'%' ;
flush privileges;
九、其他常用查询
查询版本:select @@version;或select version();
显示所有数据库: show databases; 或者 select database();
显示当前数据库包含的表:show tables;
查看数据库字符集:show variables like '%char%';
用户重命名:RENAME USER 'user'@'%' TO 'dong'@'%';
锁表: flush tables with read lock;
查看当前用户: select user();
查看所有用户:SELECT User, Host, Password FROM mysql.user;
查看mysql实例的端口:show variables like 'port';
显示表结构和列结构的命令:desc tablename;
查看master状态:show master status;
查看slave状态:show slave status ;
查看所有的log文件:show master logs;,在主服务器上执行。(即查看所有binlog日志列表)
显示最近的警告详情:show warnings;