添加初次登录密码:
mysqladmin -uroot -p password xxx;
在mysql5.7以后已经改变了。可能会生成~/.mysql_secret的默认密码。
利用默认密码登录后,在进行root用户密码修改。
登陆后> flush privileges;
#privileges 特权,权限
登录用户:
mysql -uxxx -p
之后输入密码
MySQL自动补全:
vim /etc/my.cnf
[mysql]
#no-auto-rehash
auto-rehash
#重启mysql
systemctl restart mysqld
新建数据库:
CREATE DATABASE xxx;
SHOW DATABASES;
新建表:
CREATE TABLE table_name(column_name column_type,zhang char);
新建用户:
CREATE USER username@localhost IDENTIFIED BY '密码';
flush privileges;
添加新用户并授权:
grant select on database.* to user@host identified by "password"
grant select,insert,update, delete on *.* to test1@'%' Identified by “abc”;
grant select,insert,update,delete on mydb.* to test2@localhost identified by “abc”;
grant select,insert,update,delete on mydb.* to test2@localhost identified by ""; #无密码
#grant 权限1,权限2,…权限n on 数据库名.表名称 to 用户名@用户地址 identified by ‘连接口令’;
授权远程连接mysql:
grant all privileges on *.* to 'username'@'hostip' identified by 'password';
#grant all privileges on *.* to 'username'@'hostip'identified by 'password' with grant option 赋予这个用于赋予权限的权限;
flush privileges;
修改密码:
UPDATE mysql.user SET password=PASSWORD('新密码') WHERE User='xxx';
#在mysql5.7以后,password选项变为了 authentication_string。
UPDATE mysql.user SET authentication_string =PASSWORD('新密码') WHERE User='xxx';
#修改root密码
UPDATE mysql.user SET authentication_string =PASSWORD('root') WHERE User='xxx';
FLUSH PRIVILEGES;
忘记密码:
在 “my.cnf” 或“my.ini”文件的 “mysqld” 配置段添加 “skip-grant-tables”,然后重新启动mysql 即可登录修改 root 密码。
vim /etc/my.cnf
skip-grant-tables
连接mysql:
mysql -h主机地址 -u用户名 -p用户密码
查看所有数据库:
SHOW DATABASES;
显示 xx 数据库中的数据表:
USE xxx;
SHOW TABLES;
显示数据表的结构:
DESCRIBE 表名;
建立数据表:
USE 库名;
CREATE TABLE 表名(字段名 类型, 字段名1 INT, 字段名2 VARCHAR(20));
删除数据库:
DROP DATABASES 库名;
删除数据表:
DROP TABLES 表名;
将表中数据清空:
DELETE FROM 表名;
显示表中的记录:
SELECT * FROM 表名 [ WHERE xxx [ ORDER BY xxx ] [ GROUP BY xxx ] ]
向表中插入数据:
INSERT INTO 表名(column_1, column_2) VALUE( "xxx","xxx22");
更新表中的数据:
UPDATE 表名 SET column=value,column2=value2 WEHER column column=xxx;
显示当前 User:
SELECT USER();
数据备份:
mysqldump -uuser -ppassword --all-databases > mysqldump.sql # 举例
##注意注意 如果因为密码过于复杂而无法登录,则需要加上 ' '--> 'password'
导入 .sql 文件:
USE 数据库名;
SOURCE d:/mysql.sql;
导入文本数据:
LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE 表名;
恢复数据库:
mysql -uroot -ppassword 数据库 < test.sql(备份数据库)