一、MySQL在linux下的安装
linux(本文在linux mint发行版下安装,ubuntu同)在命令行直接输入sudo apt-get install mysql-server
等待结束即可。如果一切顺利,执行mysql -u root -p
按回车即可进入MySQL,此时命令提示符应该变为mysql>。
以上理想化的安装过程,至少对我来说,碰到了一些问题。
1. 安装全程并无设置密码的步骤,但在登录MySQL的时候需要密码。
碰到这种情况,说明MySQL在安装过程设置了随机密码,需要去/etc/mysql/debian.cnf
文件内部查找密码,执行如下命令:
$ sudo cat /etc/mysql/debian.cnf # 这里需要sudo获取权限。
[sudo] password for xiaolong: # 下面时查找到的结果。
# Automatically generated for Debian scripts. DO NOT TOUCH!
[client]
host = localhost
user = debian-sys-maint
password = LnrG6Clrx4RXNAgi # !!!密码在这里!!!
socket = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host = localhost
user = debian-sys-maint
password = LnrG6Clrx4RXNAgi
socket = /var/run/mysqld/mysqld.sock
如果输入密码再次尝试进如MySQL可以成功,那么恭喜你!但是我又碰上了其他的问题。
2. debian-sys-maint
可以登录,但是root
不可以。
具体的原因我不太清楚,并且输入密码仍然显示root不可以登录,提示[ERROR 1698 (28000): Access denied for user 'root'@'localhost']
。
所以百度谷歌一番,发现解决方案竟然时因为进入MySQL的权限不够,输入 sudo mysql -u root
(有人说执行这一部时因为MySQL时新安装的程序,链接内还有另外一种方法解决问题)就可以直接进入MySQL,并看到提示符mysql>。
之后再执行如下命令,
mysql> USE mysql;
mysql> UPDATE user SET plugin='mysql_native_password' WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> exit;$ service mysql restart
以后就可以愉快的通过mysql -u root
(此时root
这个user的密码就清空了)进入MySQL玩耍了。
如果想要更改密码,可以执行ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'admin';
其中的admin
是你需要设置的密码。
二、MySQL的数据库创建
- 登录MySQL
前文中的mysql -u(username) -p(password)
就是MySQL的登录格式。
注:password也可以暂时不填(否则登录后会弹出一个安全警告),等回车后再加密填写。
-
创建数据库
create database (databasename) charset=utf8
charset是设置字符编码格式,可以把utf8更改成你需要设置的格式。 -
使用数据库
use (databasename)
因为可以创建多个数据库,所以使用前需要提示MySQL你要使用哪个数据库。
网友评论