linux环境(CentOS release 6.9 (Final))通过yum安装mysql:
sudo yum install mysql-server(该命令会同时安装server依赖的client)
等效的做法:
sudo yum install mysql(安装client)
sudo yum install mysql-server(安装server)
查看mysql是否安装成功:
cat /etc/passwd | grep mysql
cat /etc/group | grep mysql
或者:
mysqladmin --version
查看mysql服务状态:
ps -ef | grep mysql
设置mysql开机自启动:
chkconfig mysql on
查看是否成功:
chkconfig --list | grep mysql
另外一种方法(需图形界面):
ntsysv
碰到无法启动的情况,首先查看/var/log/mysqld.log,
根据错误可以从stackoverflow上找到类似的解决方案
默认情况下mysql的目录:
/var/lib/mysql 数据库文件存放目录
/usr/share/mysql/ 配置文件目录
/usr/bin 相关命令目录
/etc/init.d/mysql 启停相关脚本
重置mysql密码的通用方法:
1、停止mysql服务(sudo service mysqld stop),启动的时候带上--skip-grant-tables选项(sudo service mysqld start --skip-grant-tables).
不过在这种情况下不安全,所有的匿名用户都可以不使用密码就可以获取所有的权限,并且可以使得账户管理失效,
故一般情况下会联合--skip-networking参数使用,以防止通过远端客户端调用.
2、直接通过mysql连接到数据库,拥有所有权限
3、在mysql客户端通过flush privileges命令告诉服务器授权表使得账户管理有效
4、改变root用户的密码:
* 5.7.5之后:alter user 'root'@'localhost' identified by 'NewPassword'
* 5.7.5之前: set password for 'root'@'localhost' = password('NewPassword')
5、重启mysql服务,不带--skip-grant-tables和--skip-networking参数
查看目前server中对应的字符集命令:
在mysql中修改字符集(参考文件):
[client]
port = 3306
socket = /var/lib/mysql/mysql.sock
default-character-set = utf8
[mysqld]
sort_buffer_size = 2M
read_rnd_buffer_size = 8M
port = 3306
character_set_server = utf8
#character_set_client = utf8
collation-server = utf8_general_ci
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[mysql]
no-auto-rehash
default-character-set = utf8