安装 MySQL
注意:本次安装是说直接在服务器采用安装包模式
1. 在终端提示符后运行下列命令:
sudo apt-get install mysql-server mysql-client #中途会让你输入一次root用户密码
一旦安装完成,MySQL 服务器应该自动启动。
sudo start mysql # 手动的话这样启动 sudo stop mysql # 手动停止
当你修改了配置文件後,你需要重启 mysqld 才能使这些修改生效。
2. 要想检查 mysqld 进程是否已经开启,可以使用下面的命令:
pgrep mysqld
如果进程开启,这个命令将会返回该进程的 id。
安装后文件结构
MySQL配置文件:/etc/mysql/my.cnf
datadir = /var/lib/mysql #指定了数据文件存放路径
如果你创建了一个名为 test 的数据库,那么这个数据库的数据会存放到 /var/lib/mysql/test 目录下。
配置 MySQL
1. 进入/etc/mysql目录下
2. debian.cnf 查看里面的用户名和密码
3. debian.cnf文件里用户名为debian-sys-maint,对应的密码为:123,那么就可以使用该用户密码登录mysql了
4. mysql -u debian-sys-maint -p 按回车
5. 这时需要你输入密码,复制debian.cnf中的密码(不要手动输入,因为容易产生错误)
6. 终端中会出现 mysql> 这样的提示,说明你成功进入mysql了
7. mysql> use mysql #命令使用mysql这个数据库,准备赋值权限和修改root密码
8. mysql> select * from user; # 查看一下这个表中是否有root用户,确认是否存在root用户。
9. mysql> update user set password=password("123") where user="root"; #更改root用户进入mysql的密码。
10. mysql> flush privileges;
11. mysql> quit #退出mysql。
12. mysql -u root -p #再输入密码即可重新登录mysql。
Ubuntu Linux中开启MySQL远程访问功能
1. 确认一下3306是否对外开放,MySQL默认状态下是不开放对外访问功能的。查看的办法如下:
~# netstat -an | grep 3306
出现: tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
从上面可以看出,mysql的3306端口只是监听本地的连接,这样就阻碍了外部IP对该数据库的访问
2. 修改的办法其实很简单,进入到mysql的配置文件所在目录(/etc/mysql/my.cnf)下,找到文件中的如下内容:
# Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. bind-address = 127.0.0.1
3. 将bind-address注释掉 (所有机器都可以访问,不限制IP) ,或者改成你想要使用的客户端主机IP。
4. 重启mysql即可在远程登陆mysql服务器了
5. 再次确认一下3306是否对外开放,MySQL默认状态下是不开放对外访问功能的。查看的办法如下:
~# netstat -an | grep 3306
出现: tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
6. 给root赋予权限这样才能用root远程访问
mysql -u root -p #再输入密码即可重新登录mysql。
执行如下命令:
grant all on sonardb.* to sonar@'%' identified by '123456'; grant all on sonardb.* to sonar@localhost identified by '123456';
sonardb替换为你想访问的数据库名,sonar是你的想使用的用户名,123456替换为你的密码,这样就开启了远程访问功能.
MySQL 5.5 及以前版本 CentOS安装
1、查看系统是否安装了MySQL
使用命令:
#rpm -qa | grep mysql
2、卸载已安装的MySQL
卸载mysql命令如下:
#rpm -e --nodeps mysql-libs-5.1.61-4.el6.x86_64
要将 /var/lib/mysql文件夹下的所有文件都删除干净
3、安装新的MySQL
命令如下:
#rpm -ivh MySQL-server-5.5.30-1.el6.x86_64.rpm
#rpm -ivh MySQL-client-5.5.30-1.el6.x86_64.rpm
#rpm -ivh MySQL-devel-5.5.30-1.el6.x86_64.rpm
4、启动MySQL服务
方法一:重新启动系统
方法二:#service mysql start
查看MySQL运行状态的方法:
使用命令:# /etc/rc.d/init.d/mysql status
结果: 显示 “SUCCESS” 则已经运行
显示 “FAILED” 则没有运行
MySQL服务一些其他命令
a、察看mysql是否在自动启动列表: # /sbin/chkconfig –list
b、添加mysql到系统自启动服务组: # /sbin/chkconfig – add mysql
c、把mysql从启动服务组中删除: # /sbin/chkconfig – del mysql
d、停止mysql服务: # service mysql stop
e、脚本启动mysql服务: # /etc/rc.d/init.d/mysqld start
f、脚本停止mysql服务: # /etc/rc.d/init.d/mysqld stop
5、安装完成之后为MySQL设置root密码。
命令如下:
# /usr/bin/mysqladmin -u root password '123456'
6、mysql安装目录说明
/var/lib/mysql 数据库文件
/usr/share/mysql 命令及配置文件
/usr/bin (mysqladmin、mysqldump等命令)
7、linux 下安装的mysql表名是区分大小写的,如果要不区分大小写,可以采用以下方式
1、拷贝 /usr/share/mysql/my-huge.cnf 到 /etc/my.cnf(如果已有该文件可以直接修改)
命令如下:# cp /usr/share/mysql/my-huge.cnf /etc/my.cnf
2、修改my.cnf 文件在 [mysqld]下增加 lower_case_table_names=1 #表名全部为小写,避免出现大小写敏感
3、重启mysql
# service mysql restart
8(可选)、为连接MySQL的主机分配权限(方便远程连接MySQL数据库):
命令如下:
>mysql GRANT ALL ON *.* TO 'username'@'%' identified by 'password' WITH GRANT OPTION; //xxx.xxx.x.xx是你的IP
9(可选)、更改MySQL默认字符集 (默认字符集和操作系统字符集一样,所以不需要设置)
查看mysql字符集:mysql> show variables like 'character_set_%';
mysql 5.6 CentOS 安装
1、查询和安装和上面一样
2、mysql 5.6安装好之后密码保存在文件:
/root/.mysql_secret
3、启动mysql服务,
service mysql start
4、修改mysql root 密码:
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');