网络编程
位置:首页>> 网络编程>> 数据库>> Linux mysql安装修改root密码服务

Linux mysql安装修改root密码服务

 来源:Asp之家 发布时间:2010-10-14 13:59:00 

标签:linux,mysql,服务

在向大家详细介绍Linux mysql之前,首先让大家了解下Linux mysql,然后全面介绍Linux mysql,希望对大家有用。

1. Linux mysql安装:

$ yum install mysql-server

2. Linux mysql修改root密码:

$ mysqladmin -u root password your_new_passwd

3. 启动Linux mysql服务

$ /etc/init.d/mysqld start

4. 添加为系统服务并随之自动启动:

$ chkconfig --level 2345 mysqld on

5. 修改防火墙,开启3306端口,使得可以进行远程访问:

System->Administration->Firewall->Other ports,添加3306端口,一定要把tcp和udp都加上!

其本质是修改了/etc/sysconfig/iptables文件,也可直接进行修改,按照如下格式:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p udp --dport 3306 -j ACCEPT

6. mysql默认的root用户是不能远程访问的,需要为Linux mysql中添加一个可以远程访问的用户,首先以root用户登录Linux mysql,然后增加一个用户:

GRANT ALL ON *.* TO your_username@'your_host_name_or_ip_address' IDENTIFIED BY 'your_password'

这里的ALL表示,所有任何权限(包括增删改等),*.*表示任何数据库中的任何表,也可指定成Linux mysql中的某个数据库甚至某个表,该用户登录后只能对该数据库进行刚刚赋予的操作。your_host_name_or_ip_address是指规定你只能在通过该ip地址远程访问,如果指定任意地址均可访问,则可用通配符%代替。

比如:GRANT insert ON test.* IDENTIFIED BY 'test'它的含义是,用户可在任意IP地址通过用户名test,密码test登录,登录后,只能对test数据库进行insert操作。

其本质是在Linux mysql中默认包含了一个Linux mysql的数据库,其中有一个user表,上述GRANT命令其实就是往这个表中添加了一行记录。也可以直接修改这个表达到同样的效果,不过较为麻烦。注意添加密码,可以使用PASSWORD()函数。

7. 远程登录,以在linux下为例(window下可用Mysql GUI Tools):

$ mysql -u test -h 192.168.1.111 -p#然后输入密码即可

8. 解决数据库表插入中文显示乱码问题:

1)修改/etc/my.cnf文件,找到[mysqld],在后面加入以下行:

default-character-set = utf8

同时新建一项,名为[client],在之后插入同上的语句。重启Linux mysql服务。

2) 对于创建数据库的sql脚本,需要加入以下语句:

drop database if exists TEST;

create database TEST default character set utf8;

这样,Linux mysql默认的字符集被设为UTF-8,所创建表的字符集也变为UTF-8,并且客户端也将以UTF-8显示。

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com