先展示一下终极效果
写在开始:
本教程所需硬件及软件:
- mac silicon机型(mac intel机型也可以参考利用)
- VMware Workstation Pro或者Parallels Desktop虚拟机软件
- Windows 10/11 arm64 安装镜像。
- navicat或者其他数据库访问软件(非必需)
本次利用硬件及软件:
- MacBook Pro M1Pro 14‘
- macOS 14.0 Sonoma
- Parallels Desktop 19
- Windows 11 pro 22H2 arm64
- Oracle 11g 桌面级数据库
- navicat 16
教程正文
- 打开正常安装的Windows虚拟机 parallels也好 vmware也好(这个安装过程建议百度)
(这里我用parallels desktop + Windows 11 Pro 作为例子)
2.按照正常流程安装好Oracle 11g
3. 网络模式选择与主机共享网络
4. 然后记下实体机ip计作ip1 虚拟机ip计作ip2(以下ip1,ip2请根据现实情况设置)
IP1: 10.211.55.2
IP2: 10.211.55.4
注:作为一台当代电脑,大概会有多个网络,会有多个ip地点,记得选择和虚拟机一致的ip,由于这是虚拟机和实体机共有的网络。
具体查找办法:
虚拟机:pd的同学直接按照上面第三步那样即可检察,vm的同学就在虚拟机里搜刮里输入cmd,唤出Windows命令提示符之后输入ipconfig并回车即可检察虚拟机地点ip地点。
实体机:mac下按住command + space(空格)唤出搜刮 输入 terminal 启动终端,
输入 ifconfig 回车 在返回效果里寻找和上面截图基本一致的那个
5. 虚拟机下关闭防火墙,三个模式(域配置文件,专用配置文件,公用配置文件)的防火墙都要关掉
1)搜刮里输入防火墙,选择并打开圈中项
2)点击检察其属性
3) 将下面几个模式的防火墙全部完全关闭
6. 然后服务里将Oracle开头倒数第一个正在运行的listener服务重启
7. 在Windows里ping ip1 在mac里 ping ip2 通的话去往下一步
8. 在Mac实体机里打开navicat
9. 新建oracle 连接 主机填ip2。服务名填ORCL或者orcl(当然具体看你本身 不确定的可以在Windows虚拟机中sqlplus下利用select global_name from global_name; 来查找)脚色无论默认或者sysdba 密码都是你设置好的那个。
10. 如果navicat报一个ORA-12514:TNS:listener does not currently know of service requested in connect descriptor错误的话 , 将你的虚拟机重启一下 即可。如果重启后还是报这个错误,查抄您的连接服务名是否填写准确。
11. 至此教程竣事
12. 当然有些小伙伴大概会问说如果我想用终端直接访问SQLPLUS怎么办呢?
这个可以参考以下步骤:
1)在Windows 可选功能里搜刮OPEN SSH,安装Open SSH 服务器
2)在Windows里设置openssh服务端默认启动
以管理员身份打开PowerShell,然后运行以下命令来启动 sshd service
- ```bash
- 启动sshd服务
- Start-Service sshd
- 将sshd服务设置为自动启动,若不设置需要在每次重启后重新开启sshd
- Set-Service -Name sshd -StartupType 'Automatic'
- ```
复制代码
3) 之后我们在mac 终端里输入 ssh ”虚拟机用户名“@“虚拟机ip地点
这里有一个题目就是默认必要利用有密码账户登录,而我虚拟机里未设置密码,
让我们返回虚拟机,给我们的账户创建一个密码(建议利用和数据库相同密码,单纯好记)
4)再次尝试从本地登录虚拟机
登录乐成
输入sqlplus,进入SQLPLUS 界面,测试数据库访问,完成。
5)顺便说一个办理远程访问oracle数据库中文显示乱码的办理办法(我这种办法估计遇不到乱码但是也不肯定,以是放在这里)。「可选」
进入SqlPLUS界面,进入所要利用的用户模式下,
输入 select userenv(‘language’) from dual;
显示返回效果:
然后退出SQL环境给终端参加环境变量(保举利用临时参加办法以免利用其他文字显示再次乱码)
临时参加办法 终端里输入 export NLS_LANG=“上面截图里查询到的效果”
13. ps: 现实上我感觉这种办法的原理跟Ubuntu虚拟机 + Docker + MySQL区别不大,还是感谢Windows Arm64的强大的兼容性(感谢微软屎山(划掉)),毕竟这可爱的oracle不给arm出client。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |