登录mysql
mysql
mysql> mysql提示符
默认情况下:使用mysql命令直接登录 等价于mysql -h 127.0.0.1 -u root -p ""
mysql -h server_host_ip
-u user
-p 密码
注:mysql管理员为root 和系统root 是两码事
关于登录mysql
mysql默认是拒绝远程登录的
假设一个mysql机器的IP是 192.168.18.254
但是登录时不能使用 mysql -h 192.168.18.254 -u root -p
无法登录
正确的方式 mysql -h 127.0.0.1 -u root -p
设置密码(前提无密码)退出mysql
mysqladmin -u root password '112'
密码登录
mysql -uroot -p112
mysql -u root -p112
修改密码(前提有密码)退出mysql
mysqladmin -uroot -p112 password 'qwe'
查看mysql登录者
mysql> show processlist;
mysql> show full processlist; (完整信息)可以看到进程ID
踢掉登陆者
mysql> kill ID号; 杀死用户登陆ID 强迫其重新登陆
改掉该用户的密码 然后刷新生效 杀死其登陆进程。对方就会被踢下线,在连接密码错误,无法登陆。
忘记密码
第一种: 修改配置文件、跳过密码
vim /etc/my.cnf
skip-grant-tables #本地和远程登陆不管用户是谁都可以跳过密码
[mysqld_safe] #保证mysql正常启动
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
#重启并进入mysql
[root@Fox ~]# /etc/init.d/mysqld restart
[root@Fox ~]# mysql
#修改密码
mysql> update mysql.user set password=password('112') where user='root';and host=“localhost”;
mysql> flush privileges; 刷新
#把密码开起来
[root@Fox ~]# vim /etc/my.cnf
#skip-grant-tables
[root@Fox ~]# /etc/init.d/mysqld restart
[root@Fox ~]# mysql -uroot -p112
第二种 简单粗暴(删库) 慎用!!!
[root@Fox ~]# cd /var/lib/mysql/
[root@Fox mysql]# rm -rf ./*
[root@Fox ~]# /etc/init.d/mysqld restart
mysql相关文件
/var/lib/mysql 默认数据放在该目录下 其实一个数据库就是一个文件夹
/etc/my.cnf 配置文件
/var/log/mysqld.log 日志
配置文件介绍
[mysqld]
在这个配置段之内,将会看到与MySQL守护进程相关的命令
datadir=/var/lib/mysql
MySQL服务器把数据库存储在由datadir变量所定义的目录中。
Socket=/var/lib/mysql/mysql.sock
MySQL套接字把数据库程序局部的或通过网络连接到MySQL客户。
[safe_mysqld]
这个配置段包含MySQL启动脚本所引用的命令。如果使用MySQL4.X或4.X以上版本,必须把这个配置段改成[mysqld_safe]。
log-error=/var/log/mysqld.log
这是MySQL所关联的错误被发送到的这个文件。如果使用MySQL4.X或4.X以上版本,必须使用log-error指令替换这条命令。
pid-file=/var/run/mysqld/mysqld.pid
最后,pid-file指令定义MySQL服务器在运作期间的进程标识符(PID)。如果MySQL服务器当前没有运行,这个文件应该不存在。
[client]
这个配置把指令传递给与MySQL服务器相关的客户。
port=3306
MySQL所相关的标准TCP/IP端口是3306。如果需要修改这个端口号(可以增强安全),必须确保用于MySQL客户与服务器的所有相应配置文件中均修改这个号。
socket=/var/lib/mysql/mysql.sock
正像默认的/etc/my.cnf文件中所定义的那样,这是控制MySQL客户与服务器间通信的标准套接字文件。